diff options
| author | 2020-04-17 16:33:08 -0400 | |
|---|---|---|
| committer | 2020-04-17 16:33:08 -0400 | |
| commit | b8f5c71f2d7f819821acf036175cce65ab1ae12c (patch) | |
| tree | 151d7ed4e47536dc0e149a7117387b6a502d7da6 /src/core/core.h | |
| parent | Merge pull request #3682 from lioncash/uam (diff) | |
| parent | core: hle: Address various feedback & code cleanup. (diff) | |
| download | yuzu-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.h | 20 |
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; | |||
| 36 | enum class ResultStatus : u16; | 36 | enum class ResultStatus : u16; |
| 37 | } // namespace Loader | 37 | } // namespace Loader |
| 38 | 38 | ||
| 39 | namespace Memory { | 39 | namespace Core::Memory { |
| 40 | struct CheatEntry; | 40 | struct CheatEntry; |
| 41 | } // namespace Memory | 41 | class Memory; |
| 42 | } // namespace Core::Memory | ||
| 42 | 43 | ||
| 43 | namespace Service { | 44 | namespace Service { |
| 44 | 45 | ||
| @@ -86,14 +87,11 @@ namespace Core::Hardware { | |||
| 86 | class InterruptManager; | 87 | class InterruptManager; |
| 87 | } | 88 | } |
| 88 | 89 | ||
| 89 | namespace Memory { | ||
| 90 | class Memory; | ||
| 91 | } | ||
| 92 | |||
| 93 | namespace Core { | 90 | namespace Core { |
| 94 | 91 | ||
| 95 | class ARM_Interface; | 92 | class ARM_Interface; |
| 96 | class CoreManager; | 93 | class CoreManager; |
| 94 | class DeviceMemory; | ||
| 97 | class ExclusiveMonitor; | 95 | class ExclusiveMonitor; |
| 98 | class FrameLimiter; | 96 | class FrameLimiter; |
| 99 | class PerfStats; | 97 | class 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 | ||