diff options
author | Morph <39850852+Morph1984@users.noreply.github.com> | 2023-03-04 04:51:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-04 04:51:17 +0100 |
commit | ce8f4da63834be0179d98a7720dee47d65f3ec06 (patch) | |
tree | a9a9303a532d374db9ae8255e5f3f2487e370f84 /src/core/hle/service/server_manager.h | |
parent | Merge pull request #9855 from liamwhite/kern-16-support (diff) | |
parent | nvnflinger: fix name (diff) | |
download | yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar.gz yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar.bz2 yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar.lz yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar.xz yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.tar.zst yuzu-ce8f4da63834be0179d98a7720dee47d65f3ec06.zip |
Diffstat (limited to 'src/core/hle/service/server_manager.h')
-rw-r--r-- | src/core/hle/service/server_manager.h | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/src/core/hle/service/server_manager.h b/src/core/hle/service/server_manager.h index 57b954ae8..fdb8af2ff 100644 --- a/src/core/hle/service/server_manager.h +++ b/src/core/hle/service/server_manager.h @@ -20,30 +20,30 @@ class System; } namespace Kernel { -class HLERequestContext; class KEvent; class KServerPort; class KServerSession; class KSynchronizationObject; -class SessionRequestHandler; -class SessionRequestManager; } // namespace Kernel namespace Service { +class HLERequestContext; +class SessionRequestHandler; +class SessionRequestManager; + class ServerManager { public: explicit ServerManager(Core::System& system); ~ServerManager(); Result RegisterSession(Kernel::KServerSession* session, - std::shared_ptr<Kernel::SessionRequestManager> manager); + std::shared_ptr<SessionRequestManager> manager); Result RegisterNamedService(const std::string& service_name, - std::shared_ptr<Kernel::SessionRequestHandler>&& handler, + std::shared_ptr<SessionRequestHandler>&& handler, u32 max_sessions = 64); Result ManageNamedPort(const std::string& service_name, - std::shared_ptr<Kernel::SessionRequestHandler>&& handler, - u32 max_sessions = 64); + std::shared_ptr<SessionRequestHandler>&& handler, u32 max_sessions = 64); Result ManageDeferral(Kernel::KEvent** out_event); Result LoopProcess(); @@ -56,10 +56,9 @@ private: Result LoopProcessImpl(); Result WaitAndProcessImpl(); - Result OnPortEvent(Kernel::KServerPort* port, - std::shared_ptr<Kernel::SessionRequestHandler>&& handler); + Result OnPortEvent(Kernel::KServerPort* port, std::shared_ptr<SessionRequestHandler>&& handler); Result OnSessionEvent(Kernel::KServerSession* session, - std::shared_ptr<Kernel::SessionRequestManager>&& manager); + std::shared_ptr<SessionRequestManager>&& manager); Result OnDeferralEvent(std::list<RequestState>&& deferrals); Result CompleteSyncRequest(RequestState&& state); @@ -69,16 +68,16 @@ private: std::mutex m_list_mutex; // Guest state tracking - std::map<Kernel::KServerPort*, std::shared_ptr<Kernel::SessionRequestHandler>> m_ports{}; - std::map<Kernel::KServerSession*, std::shared_ptr<Kernel::SessionRequestManager>> m_sessions{}; + std::map<Kernel::KServerPort*, std::shared_ptr<SessionRequestHandler>> m_ports{}; + std::map<Kernel::KServerSession*, std::shared_ptr<SessionRequestManager>> m_sessions{}; Kernel::KEvent* m_event{}; Kernel::KEvent* m_deferral_event{}; // Deferral tracking struct RequestState { Kernel::KServerSession* session; - std::shared_ptr<Kernel::HLERequestContext> context; - std::shared_ptr<Kernel::SessionRequestManager> manager; + std::shared_ptr<HLERequestContext> context; + std::shared_ptr<SessionRequestManager> manager; }; std::list<RequestState> m_deferrals{}; |