#pragma once #include #include class GameStats final { public: static void BeginFrame(); static void EndFrame(); static void Reset(); static const PerfStats& GetStats() { return m_Stats; } private: static bool m_IsMeasuring; static bool m_ResetPending; static bool m_InterimUpdated; static std::chrono::time_point m_FrameStart; static std::chrono::time_point m_InterimStart; static int m_FrameTimingCount; static float m_InterimDelay; static std::deque m_FrameMsTimings; static PerfStats m_Stats; };