diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2017-05-22 02:18:16 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-22 02:18:16 +0200 |
commit | cc566dadd8cd310658785b87b1692880ce51eeda (patch) | |
tree | 07136b798781adb9d864115f338eb62d09147949 /src/core/hle/kernel/server_session.h | |
parent | Merge pull request #2694 from Subv/vfp_vsub_ftz (diff) | |
parent | Kernel/Sessions: Remove the ClientSession::Create function. (diff) | |
download | yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar.gz yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar.bz2 yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar.lz yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar.xz yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.tar.zst yuzu-cc566dadd8cd310658785b87b1692880ce51eeda.zip |
Diffstat (limited to 'src/core/hle/kernel/server_session.h')
-rw-r--r-- | src/core/hle/kernel/server_session.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/core/hle/kernel/server_session.h b/src/core/hle/kernel/server_session.h index 761fc4781..c907d487c 100644 --- a/src/core/hle/kernel/server_session.h +++ b/src/core/hle/kernel/server_session.h @@ -9,6 +9,7 @@ #include "common/assert.h" #include "common/common_types.h" #include "core/hle/kernel/kernel.h" +#include "core/hle/kernel/session.h" #include "core/hle/kernel/thread.h" #include "core/hle/result.h" #include "core/hle/service/service.h" @@ -17,6 +18,8 @@ namespace Kernel { class ClientSession; +class ClientPort; +class ServerSession; /** * Kernel object representing the server endpoint of an IPC session. Sessions are the basic CTR-OS @@ -47,11 +50,13 @@ public: * Creates a pair of ServerSession and an associated ClientSession. * @param name Optional name of the ports. * @param hle_handler Optional HLE handler for this server session. + * @param client_port Optional The ClientPort that spawned this session. * @return The created session tuple */ static SessionPair CreateSessionPair( const std::string& name = "Unknown", - std::shared_ptr<Service::SessionRequestHandler> hle_handler = nullptr); + std::shared_ptr<Service::SessionRequestHandler> hle_handler = nullptr, + SharedPtr<ClientPort> client_port = nullptr); /** * Handle a sync request from the emulated application. @@ -63,8 +68,9 @@ public: void Acquire(Thread* thread) override; - std::string name; ///< The name of this session (optional) - bool signaled; ///< Whether there's new data available to this ServerSession + std::string name; ///< The name of this session (optional) + bool signaled; ///< Whether there's new data available to this ServerSession + std::shared_ptr<Session> parent; ///< The parent session, which links to the client endpoint. std::shared_ptr<Service::SessionRequestHandler> hle_handler; ///< This session's HLE request handler (optional) |