1#ifndef YAZE_APP_GFX_PERFORMANCE_PERFORMANCE_PROFILER_H
2#define YAZE_APP_GFX_PERFORMANCE_PERFORMANCE_PROFILER_H
8#include <unordered_map>
72 void StartTimer(
const std::string& operation_name);
79 void EndTimer(
const std::string& operation_name);
126 bool IsTiming(
const std::string& operation_name)
const;
140 double GetTotalTime(
const std::string& operation_name)
const;
157 using TimePoint = std::chrono::high_resolution_clock::time_point;
162 std::unordered_map<std::string, double>
164 std::unordered_map<std::string, int>
190 explicit ScopedTimer(
const std::string& operation_name);
RAII timer for automatic timing management.
ScopedTimer(const std::string &operation_name)
ScopedTimer & operator=(const ScopedTimer &)=delete
ScopedTimer(ScopedTimer &&)=delete
ScopedTimer & operator=(ScopedTimer &&)=delete
ScopedTimer(const ScopedTimer &)=delete
std::string operation_name_
SDL2/SDL3 compatibility layer.