summaryrefslogtreecommitdiff
path: root/src/core/core.h
diff options
context:
space:
mode:
authorGravatar bunnei2020-04-17 16:33:08 -0400
committerGravatar GitHub2020-04-17 16:33:08 -0400
commitb8f5c71f2d7f819821acf036175cce65ab1ae12c (patch)
tree151d7ed4e47536dc0e149a7117387b6a502d7da6 /src/core/core.h
parentMerge pull request #3682 from lioncash/uam (diff)
parentcore: hle: Address various feedback & code cleanup. (diff)
downloadyuzu-b8f5c71f2d7f819821acf036175cce65ab1ae12c.tar.gz
yuzu-b8f5c71f2d7f819821acf036175cce65ab1ae12c.tar.xz
yuzu-b8f5c71f2d7f819821acf036175cce65ab1ae12c.zip
Merge pull request #3666 from bunnei/new-vmm
Implement a new virtual memory manager
Diffstat (limited to 'src/core/core.h')
-rw-r--r--src/core/core.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/core/core.h b/src/core/core.h
index 8d862a8e6..acc53d6a1 100644
--- a/src/core/core.h
+++ b/src/core/core.h
@@ -36,9 +36,10 @@ class AppLoader;
36enum class ResultStatus : u16; 36enum class ResultStatus : u16;
37} // namespace Loader 37} // namespace Loader
38 38
39namespace Memory { 39namespace Core::Memory {
40struct CheatEntry; 40struct CheatEntry;
41} // namespace Memory 41class Memory;
42} // namespace Core::Memory
42 43
43namespace Service { 44namespace Service {
44 45
@@ -86,14 +87,11 @@ namespace Core::Hardware {
86class InterruptManager; 87class InterruptManager;
87} 88}
88 89
89namespace Memory {
90class Memory;
91}
92
93namespace Core { 90namespace Core {
94 91
95class ARM_Interface; 92class ARM_Interface;
96class CoreManager; 93class CoreManager;
94class DeviceMemory;
97class ExclusiveMonitor; 95class ExclusiveMonitor;
98class FrameLimiter; 96class FrameLimiter;
99class PerfStats; 97class PerfStats;
@@ -230,10 +228,10 @@ public:
230 const ExclusiveMonitor& Monitor() const; 228 const ExclusiveMonitor& Monitor() const;
231 229
232 /// Gets a mutable reference to the system memory instance. 230 /// Gets a mutable reference to the system memory instance.
233 Memory::Memory& Memory(); 231 Core::Memory::Memory& Memory();
234 232
235 /// Gets a constant reference to the system memory instance. 233 /// Gets a constant reference to the system memory instance.
236 const Memory::Memory& Memory() const; 234 const Core::Memory::Memory& Memory() const;
237 235
238 /// Gets a mutable reference to the GPU interface 236 /// Gets a mutable reference to the GPU interface
239 Tegra::GPU& GPU(); 237 Tegra::GPU& GPU();
@@ -259,6 +257,12 @@ public:
259 /// Gets the global scheduler 257 /// Gets the global scheduler
260 const Kernel::GlobalScheduler& GlobalScheduler() const; 258 const Kernel::GlobalScheduler& GlobalScheduler() const;
261 259
260 /// Gets the manager for the guest device memory
261 Core::DeviceMemory& DeviceMemory();
262
263 /// Gets the manager for the guest device memory
264 const Core::DeviceMemory& DeviceMemory() const;
265
262 /// Provides a pointer to the current process 266 /// Provides a pointer to the current process
263 Kernel::Process* CurrentProcess(); 267 Kernel::Process* CurrentProcess();
264 268