diff options
| author | 2019-09-21 19:11:52 +1000 | |
|---|---|---|
| committer | 2019-09-22 16:30:34 +1000 | |
| commit | 8d3ff2b12723b577909e5996fffcc1532b6fbad6 (patch) | |
| tree | 8be3229d0d8f954853d526a3f0d547af2bf9399d /src/core | |
| parent | Deglobalize System: Nifm (diff) | |
| download | yuzu-8d3ff2b12723b577909e5996fffcc1532b6fbad6.tar.gz yuzu-8d3ff2b12723b577909e5996fffcc1532b6fbad6.tar.xz yuzu-8d3ff2b12723b577909e5996fffcc1532b6fbad6.zip | |
Deglobalize System: Nim
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/hle/service/nim/nim.cpp | 13 | ||||
| -rw-r--r-- | src/core/hle/service/nim/nim.h | 6 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/core/hle/service/nim/nim.cpp b/src/core/hle/service/nim/nim.cpp index f319a3ca1..8c47b2d75 100644 --- a/src/core/hle/service/nim/nim.cpp +++ b/src/core/hle/service/nim/nim.cpp | |||
| @@ -126,7 +126,7 @@ public: | |||
| 126 | class IEnsureNetworkClockAvailabilityService final | 126 | class IEnsureNetworkClockAvailabilityService final |
| 127 | : public ServiceFramework<IEnsureNetworkClockAvailabilityService> { | 127 | : public ServiceFramework<IEnsureNetworkClockAvailabilityService> { |
| 128 | public: | 128 | public: |
| 129 | IEnsureNetworkClockAvailabilityService() | 129 | IEnsureNetworkClockAvailabilityService(Core::System& system) |
| 130 | : ServiceFramework("IEnsureNetworkClockAvailabilityService") { | 130 | : ServiceFramework("IEnsureNetworkClockAvailabilityService") { |
| 131 | static const FunctionInfo functions[] = { | 131 | static const FunctionInfo functions[] = { |
| 132 | {0, &IEnsureNetworkClockAvailabilityService::StartTask, "StartTask"}, | 132 | {0, &IEnsureNetworkClockAvailabilityService::StartTask, "StartTask"}, |
| @@ -139,7 +139,7 @@ public: | |||
| 139 | }; | 139 | }; |
| 140 | RegisterHandlers(functions); | 140 | RegisterHandlers(functions); |
| 141 | 141 | ||
| 142 | auto& kernel = Core::System::GetInstance().Kernel(); | 142 | auto& kernel = system.Kernel(); |
| 143 | finished_event = Kernel::WritableEvent::CreateEventPair( | 143 | finished_event = Kernel::WritableEvent::CreateEventPair( |
| 144 | kernel, Kernel::ResetType::Automatic, | 144 | kernel, Kernel::ResetType::Automatic, |
| 145 | "IEnsureNetworkClockAvailabilityService:FinishEvent"); | 145 | "IEnsureNetworkClockAvailabilityService:FinishEvent"); |
| @@ -200,7 +200,7 @@ private: | |||
| 200 | 200 | ||
| 201 | class NTC final : public ServiceFramework<NTC> { | 201 | class NTC final : public ServiceFramework<NTC> { |
| 202 | public: | 202 | public: |
| 203 | explicit NTC() : ServiceFramework{"ntc"} { | 203 | explicit NTC(Core::System& system) : ServiceFramework{"ntc"}, system(system) { |
| 204 | // clang-format off | 204 | // clang-format off |
| 205 | static const FunctionInfo functions[] = { | 205 | static const FunctionInfo functions[] = { |
| 206 | {0, &NTC::OpenEnsureNetworkClockAvailabilityService, "OpenEnsureNetworkClockAvailabilityService"}, | 206 | {0, &NTC::OpenEnsureNetworkClockAvailabilityService, "OpenEnsureNetworkClockAvailabilityService"}, |
| @@ -218,7 +218,7 @@ private: | |||
| 218 | 218 | ||
| 219 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; | 219 | IPC::ResponseBuilder rb{ctx, 2, 0, 1}; |
| 220 | rb.Push(RESULT_SUCCESS); | 220 | rb.Push(RESULT_SUCCESS); |
| 221 | rb.PushIpcInterface<IEnsureNetworkClockAvailabilityService>(); | 221 | rb.PushIpcInterface<IEnsureNetworkClockAvailabilityService>(system); |
| 222 | } | 222 | } |
| 223 | 223 | ||
| 224 | // TODO(ogniK): Do we need these? | 224 | // TODO(ogniK): Do we need these? |
| @@ -235,13 +235,14 @@ private: | |||
| 235 | IPC::ResponseBuilder rb{ctx, 2}; | 235 | IPC::ResponseBuilder rb{ctx, 2}; |
| 236 | rb.Push(RESULT_SUCCESS); | 236 | rb.Push(RESULT_SUCCESS); |
| 237 | } | 237 | } |
| 238 | Core::System& system; | ||
| 238 | }; | 239 | }; |
| 239 | 240 | ||
| 240 | void InstallInterfaces(SM::ServiceManager& sm) { | 241 | void InstallInterfaces(SM::ServiceManager& sm, Core::System& system) { |
| 241 | std::make_shared<NIM>()->InstallAsService(sm); | 242 | std::make_shared<NIM>()->InstallAsService(sm); |
| 242 | std::make_shared<NIM_ECA>()->InstallAsService(sm); | 243 | std::make_shared<NIM_ECA>()->InstallAsService(sm); |
| 243 | std::make_shared<NIM_SHP>()->InstallAsService(sm); | 244 | std::make_shared<NIM_SHP>()->InstallAsService(sm); |
| 244 | std::make_shared<NTC>()->InstallAsService(sm); | 245 | std::make_shared<NTC>(system)->InstallAsService(sm); |
| 245 | } | 246 | } |
| 246 | 247 | ||
| 247 | } // namespace Service::NIM | 248 | } // namespace Service::NIM |
diff --git a/src/core/hle/service/nim/nim.h b/src/core/hle/service/nim/nim.h index 2a2a92df0..dbe25dc01 100644 --- a/src/core/hle/service/nim/nim.h +++ b/src/core/hle/service/nim/nim.h | |||
| @@ -8,8 +8,12 @@ namespace Service::SM { | |||
| 8 | class ServiceManager; | 8 | class ServiceManager; |
| 9 | } | 9 | } |
| 10 | 10 | ||
| 11 | namespace Core { | ||
| 12 | class System; | ||
| 13 | } | ||
| 14 | |||
| 11 | namespace Service::NIM { | 15 | namespace Service::NIM { |
| 12 | 16 | ||
| 13 | void InstallInterfaces(SM::ServiceManager& sm); | 17 | void InstallInterfaces(SM::ServiceManager& sm, Core::System& system); |
| 14 | 18 | ||
| 15 | } // namespace Service::NIM | 19 | } // namespace Service::NIM |