service: time: Implement GetStandardLocalSystemClock.

This commit is contained in:
bunnei 2020-01-04 22:18:54 -05:00
parent 361285add9
commit be5c149d37
3 changed files with 9 additions and 1 deletions

View File

@ -14,7 +14,7 @@ Time::Time(std::shared_ptr<Module> module, Core::System& system, const char* nam
{1, &Time::GetStandardNetworkSystemClock, "GetStandardNetworkSystemClock"}, {1, &Time::GetStandardNetworkSystemClock, "GetStandardNetworkSystemClock"},
{2, &Time::GetStandardSteadyClock, "GetStandardSteadyClock"}, {2, &Time::GetStandardSteadyClock, "GetStandardSteadyClock"},
{3, &Time::GetTimeZoneService, "GetTimeZoneService"}, {3, &Time::GetTimeZoneService, "GetTimeZoneService"},
{4, nullptr, "GetStandardLocalSystemClock"}, {4, &Time::GetStandardLocalSystemClock, "GetStandardLocalSystemClock"},
{5, nullptr, "GetEphemeralNetworkSystemClock"}, {5, nullptr, "GetEphemeralNetworkSystemClock"},
{20, &Time::GetSharedMemoryNativeHandle, "GetSharedMemoryNativeHandle"}, {20, &Time::GetSharedMemoryNativeHandle, "GetSharedMemoryNativeHandle"},
{30, nullptr, "GetStandardNetworkClockOperationEventReadableHandle"}, {30, nullptr, "GetStandardNetworkClockOperationEventReadableHandle"},

View File

@ -199,6 +199,13 @@ void Module::Interface::GetTimeZoneService(Kernel::HLERequestContext& ctx) {
rb.PushIpcInterface<ITimeZoneService>(module->GetTimeManager().GetTimeZoneContentManager()); rb.PushIpcInterface<ITimeZoneService>(module->GetTimeManager().GetTimeZoneContentManager());
} }
void Module::Interface::GetStandardLocalSystemClock(Kernel::HLERequestContext& ctx) {
LOG_DEBUG(Service_Time, "called");
IPC::ResponseBuilder rb{ctx, 2, 0, 1};
rb.Push(RESULT_SUCCESS);
rb.PushIpcInterface<ISystemClock>(module->GetTimeManager().GetStandardLocalSystemClockCore());
}
void Module::Interface::IsStandardNetworkSystemClockAccuracySufficient( void Module::Interface::IsStandardNetworkSystemClockAccuracySufficient(
Kernel::HLERequestContext& ctx) { Kernel::HLERequestContext& ctx) {
LOG_DEBUG(Service_Time, "called"); LOG_DEBUG(Service_Time, "called");

View File

@ -27,6 +27,7 @@ public:
void GetStandardNetworkSystemClock(Kernel::HLERequestContext& ctx); void GetStandardNetworkSystemClock(Kernel::HLERequestContext& ctx);
void GetStandardSteadyClock(Kernel::HLERequestContext& ctx); void GetStandardSteadyClock(Kernel::HLERequestContext& ctx);
void GetTimeZoneService(Kernel::HLERequestContext& ctx); void GetTimeZoneService(Kernel::HLERequestContext& ctx);
void GetStandardLocalSystemClock(Kernel::HLERequestContext& ctx);
void IsStandardNetworkSystemClockAccuracySufficient(Kernel::HLERequestContext& ctx); void IsStandardNetworkSystemClockAccuracySufficient(Kernel::HLERequestContext& ctx);
void CalculateMonotonicSystemClockBaseTimePoint(Kernel::HLERequestContext& ctx); void CalculateMonotonicSystemClockBaseTimePoint(Kernel::HLERequestContext& ctx);
void GetClockSnapshot(Kernel::HLERequestContext& ctx); void GetClockSnapshot(Kernel::HLERequestContext& ctx);