Skip to content

File result.h

File List > benchmark > reporter > result.h

Go to the documentation of this file

#pragma once

#include "benchmark/benchmark.h"
#include <ctime>
#include <map>
#include <string>
#include <vector>

namespace Argos {

class BenchmarkResultMetadata {
public:
  std::time_t date_time;
  int num_cpus;
  int mhz_per_cpu;
};

class BenchmarkResultLine {
public:
  std::string name;
  double cpu_time_per_op;
  double wall_time_per_op;
  int64_t iterations;
  std::map<std::string, benchmark::Counter> metrics;
};

class BenchmarkResult {
public:
  BenchmarkResultMetadata meta;
  std::vector<BenchmarkResultLine> results;
};

} // namespace Argos