blob: d84004f4d8b014cb3ca19134fd45ff165a2f0f53 [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef FLUTTER_BENCHMARKING_BENCHMARKING_H_
#define FLUTTER_BENCHMARKING_BENCHMARKING_H_
#include "benchmark/benchmark_api.h"
namespace benchmarking {
class ScopedPauseTiming {
public:
ScopedPauseTiming(::benchmark::State& state, bool enabled = true)
: state_(state), enabled_(enabled) {
if (enabled_) {
state_.PauseTiming();
}
}
~ScopedPauseTiming() {
if (enabled_) {
state_.ResumeTiming();
}
}
private:
::benchmark::State& state_;
const bool enabled_;
};
} // namespace benchmarking
#endif // FLUTTER_BENCHMARKING_BENCHMARKING_H_