aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/core.h
diff options
context:
space:
mode:
authorFernando Sahmkow <[email protected]>2023-06-28 06:28:13 +0200
committerFernando Sahmkow <[email protected]>2023-06-28 19:34:21 +0200
commit47d0d292d5cc5f0404e126023279db7decd532ac (patch)
treea43e59102a9db2a124c7473842fbf0d661ff628e /src/core/core.h
parentb60b70e86d7c32b06a7580ddc286279a83587e11 (diff)
downloadyuzu-mainline-47d0d292d5cc5f0404e126023279db7decd532ac.tar.gz
yuzu-mainline-47d0d292d5cc5f0404e126023279db7decd532ac.zip
MemoryTracking: Initial setup of atomic writes.
Diffstat (limited to 'src/core/core.h')
-rw-r--r--src/core/core.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/core/core.h b/src/core/core.h
index 93afc9303..14b2f7785 100644
--- a/src/core/core.h
+++ b/src/core/core.h
@@ -108,9 +108,10 @@ class CpuManager;
class Debugger;
class DeviceMemory;
class ExclusiveMonitor;
-class SpeedLimiter;
+class GPUDirtyMemoryManager;
class PerfStats;
class Reporter;
+class SpeedLimiter;
class TelemetrySession;
struct PerfStatsResults;
@@ -225,6 +226,14 @@ public:
/// Prepare the core emulation for a reschedule
void PrepareReschedule(u32 core_index);
+ /// Provides a reference to the gou dirty memory manager.
+ [[nodiscard]] Core::GPUDirtyMemoryManager& CurrentGPUDirtyMemoryManager();
+
+ /// Provides a constant reference to the current gou dirty memory manager.
+ [[nodiscard]] const Core::GPUDirtyMemoryManager& CurrentGPUDirtyMemoryManager() const;
+
+ void GatherGPUDirtyMemory(std::function<void(VAddr, size_t)>& callback);
+
[[nodiscard]] size_t GetCurrentHostThreadID() const;
/// Gets and resets core performance statistics