summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/service.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2022-03-31 06:13:53 +0200
committerMorph <39850852+Morph1984@users.noreply.github.com>2022-04-02 07:24:30 +0200
commitbf1750664c6aeb991240cdd51c299fa0ab329f8f (patch)
tree5cd2ac5a457aa0109c5be1b24d3296542fb675a8 /src/core/hle/service/service.h
parenthle: kernel: Create a default thread for services that do not need their own host thread. (diff)
downloadyuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar.gz
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar.bz2
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar.lz
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar.xz
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.tar.zst
yuzu-bf1750664c6aeb991240cdd51c299fa0ab329f8f.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/service.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/core/hle/service/service.h b/src/core/hle/service/service.h
index b9ab2c465..c78b2baeb 100644
--- a/src/core/hle/service/service.h
+++ b/src/core/hle/service/service.h
@@ -114,7 +114,8 @@ private:
Kernel::HLERequestContext& ctx);
explicit ServiceFrameworkBase(Core::System& system_, const char* service_name_,
- u32 max_sessions_, InvokerFn* handler_invoker_);
+ ServiceThreadType thread_type, u32 max_sessions_,
+ InvokerFn* handler_invoker_);
~ServiceFrameworkBase() override;
void RegisterHandlersBase(const FunctionInfoBase* functions, std::size_t n);
@@ -176,14 +177,17 @@ protected:
/**
* Initializes the handler with no functions installed.
*
- * @param system_ The system context to construct this service under.
+ * @param system_ The system context to construct this service under.
* @param service_name_ Name of the service.
- * @param max_sessions_ Maximum number of sessions that can be
- * connected to this service at the same time.
+ * @param thread_type Specifies the thread type for this service. If this is set to CreateNew,
+ * it creates a new thread for it, otherwise this uses the default thread.
+ * @param max_sessions_ Maximum number of sessions that can be connected to this service at the
+ * same time.
*/
explicit ServiceFramework(Core::System& system_, const char* service_name_,
+ ServiceThreadType thread_type = ServiceThreadType::Default,
u32 max_sessions_ = ServerSessionCountMax)
- : ServiceFrameworkBase(system_, service_name_, max_sessions_, Invoker) {}
+ : ServiceFrameworkBase(system_, service_name_, thread_type, max_sessions_, Invoker) {}
/// Registers handlers in the service.
template <std::size_t N>