diff options
Diffstat (limited to 'src/core/hle/service/nifm')
-rw-r--r-- | src/core/hle/service/nifm/nifm.cpp | 15 | ||||
-rw-r--r-- | src/core/hle/service/nifm/nifm.h | 7 |
2 files changed, 12 insertions, 10 deletions
diff --git a/src/core/hle/service/nifm/nifm.cpp b/src/core/hle/service/nifm/nifm.cpp index 5d32adf64..3d176b3c2 100644 --- a/src/core/hle/service/nifm/nifm.cpp +++ b/src/core/hle/service/nifm/nifm.cpp @@ -6,6 +6,7 @@ #include "core/hle/kernel/k_event.h" #include "core/hle/service/kernel_helpers.h" #include "core/hle/service/nifm/nifm.h" +#include "core/hle/service/server_manager.h" namespace { @@ -626,10 +627,16 @@ private: } }; -void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system) { - std::make_shared<NetworkInterface>("nifm:a", system)->InstallAsService(service_manager); - std::make_shared<NetworkInterface>("nifm:s", system)->InstallAsService(service_manager); - std::make_shared<NetworkInterface>("nifm:u", system)->InstallAsService(service_manager); +void LoopProcess(Core::System& system) { + auto server_manager = std::make_unique<ServerManager>(system); + + server_manager->RegisterNamedService("nifm:a", + std::make_shared<NetworkInterface>("nifm:a", system)); + server_manager->RegisterNamedService("nifm:s", + std::make_shared<NetworkInterface>("nifm:s", system)); + server_manager->RegisterNamedService("nifm:u", + std::make_shared<NetworkInterface>("nifm:u", system)); + ServerManager::RunServer(std::move(server_manager)); } } // namespace Service::NIFM diff --git a/src/core/hle/service/nifm/nifm.h b/src/core/hle/service/nifm/nifm.h index 48161be28..b5da7ae12 100644 --- a/src/core/hle/service/nifm/nifm.h +++ b/src/core/hle/service/nifm/nifm.h @@ -12,14 +12,9 @@ namespace Core { class System; } -namespace Service::SM { -class ServiceManager; -} - namespace Service::NIFM { -/// Registers all NIFM services with the specified service manager. -void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system); +void LoopProcess(Core::System& system); class IGeneralService final : public ServiceFramework<IGeneralService> { public: |