Core: pass down Core::System reference to all services (#4272)

* Core: pass down Core::System reference to all services

This has to be done at once due to unified interface used by HLE/LLE switcher

* apt: eliminate Core::System::GetInstance

* gpu_gsp: eliminate Core::System::GetInstance in service

* hid: eliminate Core::System::GetInstance

* nwm: eliminate Core::System::GetInstance

* err_f: eliminate Core::System::GetInstance
This commit is contained in:
Weiyi Wang
2018-10-05 10:59:43 -04:00
committed by GitHub
parent 008242c5f3
commit b163502744
77 changed files with 329 additions and 111 deletions

View File

@@ -586,7 +586,8 @@ RO::RO() : ServiceFramework("ldr:ro", 2) {
RegisterHandlers(functions);
}
void InstallInterfaces(SM::ServiceManager& service_manager) {
void InstallInterfaces(Core::System& system) {
auto& service_manager = system.ServiceManager();
std::make_shared<RO>()->InstallAsService(service_manager);
}

View File

@@ -7,6 +7,10 @@
#include "core/hle/service/ldr_ro/memory_synchronizer.h"
#include "core/hle/service/service.h"
namespace Core {
class System;
}
namespace Service::LDR {
struct ClientSlot : public Kernel::SessionRequestHandler::SessionDataBase {
@@ -149,6 +153,6 @@ private:
void Shutdown(Kernel::HLERequestContext& self);
};
void InstallInterfaces(SM::ServiceManager& service_manager);
void InstallInterfaces(Core::System& system);
} // namespace Service::LDR