2018-01-18 10:58:29 -06:00
|
|
|
// Copyright 2018 yuzu emulator team
|
|
|
|
|
// Licensed under GPLv2 or any later version
|
|
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
2018-07-24 02:45:23 -04:00
|
|
|
#include "core/hle/service/time/interface.h"
|
2018-01-18 10:58:29 -06:00
|
|
|
|
2018-04-19 21:41:44 -04:00
|
|
|
namespace Service::Time {
|
2018-01-18 10:58:29 -06:00
|
|
|
|
2019-06-26 00:45:53 +10:00
|
|
|
Time::Time(std::shared_ptr<Module> time, std::shared_ptr<SharedMemory> shared_memory,
|
|
|
|
|
const char* name)
|
|
|
|
|
: Module::Interface(std::move(time), std::move(shared_memory), name) {
|
2019-04-10 14:48:37 -04:00
|
|
|
// clang-format off
|
2018-01-18 10:58:29 -06:00
|
|
|
static const FunctionInfo functions[] = {
|
2018-07-24 02:47:41 -04:00
|
|
|
{0, &Time::GetStandardUserSystemClock, "GetStandardUserSystemClock"},
|
|
|
|
|
{1, &Time::GetStandardNetworkSystemClock, "GetStandardNetworkSystemClock"},
|
|
|
|
|
{2, &Time::GetStandardSteadyClock, "GetStandardSteadyClock"},
|
|
|
|
|
{3, &Time::GetTimeZoneService, "GetTimeZoneService"},
|
|
|
|
|
{4, &Time::GetStandardLocalSystemClock, "GetStandardLocalSystemClock"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{5, nullptr, "GetEphemeralNetworkSystemClock"},
|
2019-06-26 00:45:53 +10:00
|
|
|
{20, &Time::GetSharedMemoryNativeHandle, "GetSharedMemoryNativeHandle"},
|
2019-04-10 14:48:37 -04:00
|
|
|
{30, nullptr, "GetStandardNetworkClockOperationEventReadableHandle"},
|
|
|
|
|
{31, nullptr, "GetEphemeralNetworkClockOperationEventReadableHandle"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{50, nullptr, "SetStandardSteadyClockInternalOffset"},
|
2019-06-26 00:45:53 +10:00
|
|
|
{100, &Time::IsStandardUserSystemClockAutomaticCorrectionEnabled, "IsStandardUserSystemClockAutomaticCorrectionEnabled"},
|
|
|
|
|
{101, &Time::SetStandardUserSystemClockAutomaticCorrectionEnabled, "SetStandardUserSystemClockAutomaticCorrectionEnabled"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{102, nullptr, "GetStandardUserSystemClockInitialYear"},
|
|
|
|
|
{200, nullptr, "IsStandardNetworkSystemClockAccuracySufficient"},
|
2019-04-10 14:48:37 -04:00
|
|
|
{201, nullptr, "GetStandardUserSystemClockAutomaticCorrectionUpdatedTime"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{300, nullptr, "CalculateMonotonicSystemClockBaseTimePoint"},
|
2018-11-10 01:25:56 +11:00
|
|
|
{400, &Time::GetClockSnapshot, "GetClockSnapshot"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{401, nullptr, "GetClockSnapshotFromSystemClockContext"},
|
2019-04-10 14:48:37 -04:00
|
|
|
{500, &Time::CalculateStandardUserSystemClockDifferenceByUser, "CalculateStandardUserSystemClockDifferenceByUser"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{501, nullptr, "CalculateSpanBetween"},
|
2018-01-18 10:58:29 -06:00
|
|
|
};
|
2019-04-10 14:48:37 -04:00
|
|
|
// clang-format on
|
|
|
|
|
|
2018-01-18 10:58:29 -06:00
|
|
|
RegisterHandlers(functions);
|
|
|
|
|
}
|
|
|
|
|
|
2018-09-10 21:20:52 -04:00
|
|
|
Time::~Time() = default;
|
|
|
|
|
|
2018-04-19 21:41:44 -04:00
|
|
|
} // namespace Service::Time
|