diff options
Diffstat (limited to 'src/core/core.h')
| -rw-r--r-- | src/core/core.h | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/src/core/core.h b/src/core/core.h index ff10ebe12..984074ce3 100644 --- a/src/core/core.h +++ b/src/core/core.h @@ -8,7 +8,6 @@ #include <memory> #include <string> -#include <map> #include "common/common_types.h" #include "core/file_sys/vfs_types.h" #include "core/hle/kernel/object.h" @@ -25,6 +24,7 @@ class VfsFilesystem; } // namespace FileSys namespace Kernel { +class GlobalScheduler; class KernelCore; class Process; class Scheduler; @@ -58,6 +58,10 @@ namespace Glue { class ARPManager; } +namespace LM { +class Manager; +} // namespace LM + namespace SM { class ServiceManager; } // namespace SM @@ -98,6 +102,8 @@ FileSys::VirtualFile GetGameFileFromPath(const FileSys::VirtualFilesystem& vfs, class System { public: + using CurrentBuildProcessID = std::array<u8, 0x20>; + System(const System&) = delete; System& operator=(const System&) = delete; @@ -179,6 +185,9 @@ public: /// Prepare the core emulation for a reschedule void PrepareReschedule(); + /// Prepare the core emulation for a reschedule + void PrepareReschedule(u32 core_index); + /// Gets and resets core performance statistics PerfStatsResults GetAndResetPerfStats(); @@ -233,6 +242,12 @@ public: /// Gets the scheduler for the CPU core with the specified index const Kernel::Scheduler& Scheduler(std::size_t core_index) const; + /// Gets the global scheduler + Kernel::GlobalScheduler& GlobalScheduler(); + + /// Gets the global scheduler + const Kernel::GlobalScheduler& GlobalScheduler() const; + /// Provides a pointer to the current process Kernel::Process* CurrentProcess(); @@ -326,10 +341,18 @@ public: const Service::APM::Controller& GetAPMController() const; + Service::LM::Manager& GetLogManager(); + + const Service::LM::Manager& GetLogManager() const; + void SetExitLock(bool locked); bool GetExitLock() const; + void SetCurrentProcessBuildID(const CurrentBuildProcessID& id); + + const CurrentBuildProcessID& GetCurrentProcessBuildID() const; + private: System(); @@ -353,8 +376,4 @@ private: static System s_instance; }; -inline Kernel::Process* CurrentProcess() { - return System::GetInstance().CurrentProcess(); -} - } // namespace Core |
