Frontends: Add frame time performance counters

This commit is contained in:
Connor McLaughlin
2020-01-24 14:49:47 +10:00
parent 67710ca184
commit 9562cbea56
8 changed files with 150 additions and 49 deletions

View File

@ -72,6 +72,10 @@ protected:
float duration;
};
virtual void OnPerformanceCountersUpdated();
void RunFrame();
/// Throttles the system, i.e. sleeps until it's time to execute the next frame.
void Throttle();
@ -95,18 +99,24 @@ protected:
Common::Timer m_throttle_timer;
Common::Timer m_speed_lost_time_timestamp;
bool m_paused = false;
bool m_speed_limiter_temp_disabled = false;
bool m_speed_limiter_enabled = false;
float m_average_frame_time_accumulator = 0.0f;
float m_worst_frame_time_accumulator = 0.0f;
float m_vps = 0.0f;
float m_fps = 0.0f;
float m_speed = 0.0f;
float m_worst_frame_time = 0.0f;
float m_average_frame_time = 0.0f;
u32 m_last_frame_number = 0;
u32 m_last_internal_frame_number = 0;
u32 m_last_global_tick_counter = 0;
Common::Timer m_fps_timer;
Common::Timer m_frame_timer;
std::deque<OSDMessage> m_osd_messages;
std::mutex m_osd_messages_lock;
bool m_paused = false;
bool m_speed_limiter_temp_disabled = false;
bool m_speed_limiter_enabled = false;
};