75 measurers_.push_back(std::move(
measurer));
84 reporters_.push_back(std::move(
reporter));
99 void run_case(
const std::shared_ptr<measurer::IMeasurer>&
measurer,
100 const std::shared_ptr<bench_impl::IBenchmarkCase>& bench_case)
const;
109 void run_case_with_condition(
110 const std::shared_ptr<measurer::IMeasurer>&
measurer,
111 const std::shared_ptr<bench_impl::IBenchmarkCase>& bench_case,
115 std::vector<std::shared_ptr<measurer::IMeasurer>> measurers_{};
118 std::vector<std::shared_ptr<reporter::IReporter>> reporters_{};
121 bench_impl::BenchmarkCaseRegistry& registry_;
Definition of BenchmarkCaseRegistry class.
Definition of BenchmarkCondition class.
Class of conditions of benchmarks.
Class of registry of cases of benchmarks.
static auto instance() -> BenchmarkCaseRegistry &
Get an instance of the registry.
void add(std::shared_ptr< measurer::IMeasurer > measurer)
Add a measurer.
void run() const
Run benchmarks.
void add(std::shared_ptr< reporter::IReporter > reporter)
Add a reporter.
Runner(const Config &config, bench_impl::BenchmarkCaseRegistry ®istry=bench_impl::BenchmarkCaseRegistry::instance())
Constructor.
Definition of Runner class.
Definition of IBenchmarkCase class.
Definition of IMeasurer class.
Definition of IReporter class.
Namespace of classes to measure time in benchmarks.
Namespace of reporters of results of benchmarks.
Namespace of classes to run benchmarks.
Namespace of stat_bench source codes.