diff options
| author | 2023-03-01 10:38:20 -0500 | |
|---|---|---|
| committer | 2023-03-01 10:38:20 -0500 | |
| commit | 97f7a560f3905a1dd6a4e5a0a308ea752004bf08 (patch) | |
| tree | e60a69f96d16d051220b66e90906a7abeacf1064 /src/core/hle/service/pctl | |
| parent | Merge pull request #9879 from zhaobot/tx-update-20230301024940 (diff) | |
| parent | sm:: fix lingering session initialization issues (diff) | |
| download | yuzu-97f7a560f3905a1dd6a4e5a0a308ea752004bf08.tar.gz yuzu-97f7a560f3905a1dd6a4e5a0a308ea752004bf08.tar.xz yuzu-97f7a560f3905a1dd6a4e5a0a308ea752004bf08.zip | |
Merge pull request #9832 from liamwhite/hle-mp
service: HLE multiprocess
Diffstat (limited to 'src/core/hle/service/pctl')
| -rw-r--r-- | src/core/hle/service/pctl/pctl_module.cpp | 26 | ||||
| -rw-r--r-- | src/core/hle/service/pctl/pctl_module.h | 3 |
2 files changed, 16 insertions, 13 deletions
diff --git a/src/core/hle/service/pctl/pctl_module.cpp b/src/core/hle/service/pctl/pctl_module.cpp index 083609b34..a4a12a78c 100644 --- a/src/core/hle/service/pctl/pctl_module.cpp +++ b/src/core/hle/service/pctl/pctl_module.cpp | |||
| @@ -8,6 +8,7 @@ | |||
| 8 | #include "core/hle/ipc_helpers.h" | 8 | #include "core/hle/ipc_helpers.h" |
| 9 | #include "core/hle/service/pctl/pctl.h" | 9 | #include "core/hle/service/pctl/pctl.h" |
| 10 | #include "core/hle/service/pctl/pctl_module.h" | 10 | #include "core/hle/service/pctl/pctl_module.h" |
| 11 | #include "core/hle/service/server_manager.h" | ||
| 11 | 12 | ||
| 12 | namespace Service::PCTL { | 13 | namespace Service::PCTL { |
| 13 | 14 | ||
| @@ -393,19 +394,22 @@ Module::Interface::Interface(Core::System& system_, std::shared_ptr<Module> modu | |||
| 393 | 394 | ||
| 394 | Module::Interface::~Interface() = default; | 395 | Module::Interface::~Interface() = default; |
| 395 | 396 | ||
| 396 | void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system) { | 397 | void LoopProcess(Core::System& system) { |
| 398 | auto server_manager = std::make_unique<ServerManager>(system); | ||
| 399 | |||
| 397 | auto module = std::make_shared<Module>(); | 400 | auto module = std::make_shared<Module>(); |
| 398 | std::make_shared<PCTL>(system, module, "pctl", | 401 | server_manager->RegisterNamedService( |
| 399 | Capability::Application | Capability::SnsPost | Capability::Status | | 402 | "pctl", std::make_shared<PCTL>(system, module, "pctl", |
| 400 | Capability::StereoVision) | 403 | Capability::Application | Capability::SnsPost | |
| 401 | ->InstallAsService(service_manager); | 404 | Capability::Status | Capability::StereoVision)); |
| 402 | // TODO(ogniK): Implement remaining capabilities | 405 | // TODO(ogniK): Implement remaining capabilities |
| 403 | std::make_shared<PCTL>(system, module, "pctl:a", Capability::None) | 406 | server_manager->RegisterNamedService( |
| 404 | ->InstallAsService(service_manager); | 407 | "pctl:a", std::make_shared<PCTL>(system, module, "pctl:a", Capability::None)); |
| 405 | std::make_shared<PCTL>(system, module, "pctl:r", Capability::None) | 408 | server_manager->RegisterNamedService( |
| 406 | ->InstallAsService(service_manager); | 409 | "pctl:r", std::make_shared<PCTL>(system, module, "pctl:r", Capability::None)); |
| 407 | std::make_shared<PCTL>(system, module, "pctl:s", Capability::None) | 410 | server_manager->RegisterNamedService( |
| 408 | ->InstallAsService(service_manager); | 411 | "pctl:s", std::make_shared<PCTL>(system, module, "pctl:s", Capability::None)); |
| 412 | ServerManager::RunServer(std::move(server_manager)); | ||
| 409 | } | 413 | } |
| 410 | 414 | ||
| 411 | } // namespace Service::PCTL | 415 | } // namespace Service::PCTL |
diff --git a/src/core/hle/service/pctl/pctl_module.h b/src/core/hle/service/pctl/pctl_module.h index 6f584530d..4ea77ab21 100644 --- a/src/core/hle/service/pctl/pctl_module.h +++ b/src/core/hle/service/pctl/pctl_module.h | |||
| @@ -42,7 +42,6 @@ public: | |||
| 42 | }; | 42 | }; |
| 43 | }; | 43 | }; |
| 44 | 44 | ||
| 45 | /// Registers all PCTL services with the specified service manager. | 45 | void LoopProcess(Core::System& system); |
| 46 | void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system); | ||
| 47 | 46 | ||
| 48 | } // namespace Service::PCTL | 47 | } // namespace Service::PCTL |