aboutsummaryrefslogtreecommitdiff
path: root/src/core/core.cpp
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2017-02-19 14:34:47 -0800
committerYuri Kunde Schlesner <yuriks@yuriks.net>2017-02-26 17:22:03 -0800
commit3a9447bc16259fc69297f876f6ef5b9eaf56e188 (patch)
tree30d51f39c6b57244e1ede29820c3f5d98ca38451 /src/core/core.cpp
parent1772c9f5a0a9b5e10a2593eb345b3c036a2eb2ee (diff)
Add performance statistics to status bar
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r--src/core/core.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index c9c9b76150..ca2c28ce4e 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -109,6 +109,11 @@ void System::PrepareReschedule() {
reschedule_pending = true;
}
+PerfStats::Results System::GetAndResetPerfStats() {
+ auto perf_stats = this->perf_stats.Lock();
+ return perf_stats->GetAndResetStats(CoreTiming::GetGlobalTimeUs());
+}
+
void System::Reschedule() {
if (!reschedule_pending) {
return;
@@ -140,6 +145,10 @@ System::ResultStatus System::Init(EmuWindow* emu_window, u32 system_mode) {
LOG_DEBUG(Core, "Initialized OK");
+ // Reset counters and set time origin to current frame
+ GetAndResetPerfStats();
+ perf_stats.Lock()->BeginSystemFrame();
+
return ResultStatus::Success;
}