mirror of
https://github.com/yuzu-emu/yuzu-android
synced 2025-08-11 13:22:33 -07:00
service: refactor server architecture
Converts services to have their own processes
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
#include <memory>
|
||||
|
||||
#include "core/hle/service/erpt/erpt.h"
|
||||
#include "core/hle/service/server_manager.h"
|
||||
#include "core/hle/service/service.h"
|
||||
#include "core/hle/service/sm/sm.h"
|
||||
|
||||
@@ -52,9 +53,13 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
void InstallInterfaces(SM::ServiceManager& sm, Core::System& system) {
|
||||
std::make_shared<ErrorReportContext>(system)->InstallAsService(sm);
|
||||
std::make_shared<ErrorReportSession>(system)->InstallAsService(sm);
|
||||
void LoopProcess(Core::System& system) {
|
||||
auto server_manager = std::make_unique<ServerManager>(system);
|
||||
|
||||
server_manager->RegisterNamedService("erpt:c", std::make_shared<ErrorReportContext>(system));
|
||||
server_manager->RegisterNamedService("erpt:r", std::make_shared<ErrorReportSession>(system));
|
||||
|
||||
ServerManager::RunServer(std::move(server_manager));
|
||||
}
|
||||
|
||||
} // namespace Service::ERPT
|
||||
|
@@ -7,13 +7,8 @@ namespace Core {
|
||||
class System;
|
||||
}
|
||||
|
||||
namespace Service::SM {
|
||||
class ServiceManager;
|
||||
}
|
||||
|
||||
namespace Service::ERPT {
|
||||
|
||||
/// Registers all ERPT services with the specified service manager.
|
||||
void InstallInterfaces(SM::ServiceManager& sm, Core::System& system);
|
||||
void LoopProcess(Core::System& system);
|
||||
|
||||
} // namespace Service::ERPT
|
||||
|
Reference in New Issue
Block a user