summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/Statistics.cpp
diff options
context:
space:
mode:
authorScott Mansell <phiren@gmail.com>2023-02-09 19:59:16 +1300
committerGitHub <noreply@github.com>2023-02-09 19:59:16 +1300
commitccf92a3e56764d6378c436a8040519a5bffc3372 (patch)
treee2b330b225044e1901e77a6ed147cf21b9d7ac0e /Source/Core/VideoCommon/Statistics.cpp
parent72b22ef0a54f841b1c52d49cf0e00d3b12c29ac7 (diff)
parent5c1b3ac61d7e660a9d1c206dbd0e615d637d3272 (diff)
Merge pull request #11522 from phire/KillRendererWithFire
Kill Renderer (with phire)
Diffstat (limited to 'Source/Core/VideoCommon/Statistics.cpp')
-rw-r--r--Source/Core/VideoCommon/Statistics.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/Source/Core/VideoCommon/Statistics.cpp b/Source/Core/VideoCommon/Statistics.cpp
index a6b7eb8167..231bb470b4 100644
--- a/Source/Core/VideoCommon/Statistics.cpp
+++ b/Source/Core/VideoCommon/Statistics.cpp
@@ -8,11 +8,29 @@
#include <imgui.h>
+#include "Core/DolphinAnalytics.h"
+#include "Core/HW/SystemTimers.h"
+
#include "VideoCommon/BPFunctions.h"
#include "VideoCommon/VideoCommon.h"
#include "VideoCommon/VideoConfig.h"
+#include "VideoCommon/VideoEvents.h"
Statistics g_stats;
+
+static Common::EventHook s_before_frame_event =
+ BeforeFrameEvent::Register([] { g_stats.ResetFrame(); }, "Statistics::ResetFrame");
+
+static Common::EventHook s_after_frame_event = AfterFrameEvent::Register(
+ [] {
+ DolphinAnalytics::PerformanceSample perf_sample;
+ perf_sample.speed_ratio = SystemTimers::GetEstimatedEmulationPerformance();
+ perf_sample.num_prims = g_stats.this_frame.num_prims + g_stats.this_frame.num_dl_prims;
+ perf_sample.num_draw_calls = g_stats.this_frame.num_draw_calls;
+ DolphinAnalytics::Instance().ReportPerformanceInfo(std::move(perf_sample));
+ },
+ "Statistics::PerformanceSample");
+
static bool clear_scissors;
void Statistics::ResetFrame()