summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/server_session.h
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2017-06-06 07:39:26 +0200
committerYuri Kunde Schlesner <yuriks@yuriks.net>2017-06-06 11:56:32 +0200
commit6354d083594249fa1995be7b024943c258f63880 (patch)
treebe459930c35e50f698ef7747730092116eea6a74 /src/core/hle/kernel/server_session.h
parentResultVal: Add more convenience utils for creating and cascading results (diff)
downloadyuzu-6354d083594249fa1995be7b024943c258f63880.tar
yuzu-6354d083594249fa1995be7b024943c258f63880.tar.gz
yuzu-6354d083594249fa1995be7b024943c258f63880.tar.bz2
yuzu-6354d083594249fa1995be7b024943c258f63880.tar.lz
yuzu-6354d083594249fa1995be7b024943c258f63880.tar.xz
yuzu-6354d083594249fa1995be7b024943c258f63880.tar.zst
yuzu-6354d083594249fa1995be7b024943c258f63880.zip
Diffstat (limited to 'src/core/hle/kernel/server_session.h')
-rw-r--r--src/core/hle/kernel/server_session.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/core/hle/kernel/server_session.h b/src/core/hle/kernel/server_session.h
index 62d23cf0a..28f365b9e 100644
--- a/src/core/hle/kernel/server_session.h
+++ b/src/core/hle/kernel/server_session.h
@@ -50,14 +50,20 @@ 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<SessionRequestHandler> hle_handler = nullptr,
- SharedPtr<ClientPort> client_port = nullptr);
+ static SessionPair CreateSessionPair(const std::string& name = "Unknown",
+ SharedPtr<ClientPort> client_port = nullptr);
+
+ /**
+ * Sets the HLE handler for the session. This handler will be called to service IPC requests
+ * instead of the regular IPC machinery. (The regular IPC machinery is currently not
+ * implemented.)
+ */
+ void SetHleHandler(std::shared_ptr<SessionRequestHandler> hle_handler_) {
+ hle_handler = std::move(hle_handler_);
+ }
/**
* Handle a sync request from the emulated application.
@@ -83,11 +89,9 @@ private:
* Creates a server session. The server session can have an optional HLE handler,
* which will be invoked to handle the IPC requests that this session receives.
* @param name Optional name of the server session.
- * @param hle_handler Optional HLE handler for this server session.
* @return The created server session
*/
- static ResultVal<SharedPtr<ServerSession>> Create(
- std::string name = "Unknown", std::shared_ptr<SessionRequestHandler> hle_handler = nullptr);
+ static ResultVal<SharedPtr<ServerSession>> Create(std::string name = "Unknown");
};
/**