This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
YimMenu/src/benchmark.hpp
Yimura 173d01145d
Code cleanup (#667)
* chore: Changed detour_hook extension back to cpp
* chore(crossmap): split crossmap into header and source file
* chore(logger): rename macro's to code style
* chore(logger): removed unused local variable
* chore(benchmark): changed extension to C++ header
* chore: cleanup pickup_rewards file
* chore(gta): cleanup code and file naming
* chore(CanApplyData): Removed unused code
2022-12-08 12:35:41 +00:00

31 lines
745 B
C++

#pragma once
#include "logger.hpp"
namespace big
{
using namespace std::chrono;
class benchmark
{
public:
explicit benchmark(std::string name = "") :
m_start(high_resolution_clock::now()), m_name(name) {}
void get_runtime()
{
auto now = high_resolution_clock::now();
auto milliseconds_elapsed = duration_cast<milliseconds>(now - m_start);
auto microseconds_elapsed = duration_cast<microseconds>(now - m_start);
LOG(INFO) << m_name << " finished with a resulting time of: " << milliseconds_elapsed.count() << "ms " << microseconds_elapsed.count() % 1000 << "us";
}
void reset()
{
m_start = high_resolution_clock::now();
}
private:
high_resolution_clock::time_point m_start;
std::string m_name;
};
}