2019-12-22 17:49:51 -05:00
|
|
|
// Copyright 2019 yuzu emulator team
|
2018-01-18 10:58:29 -06:00
|
|
|
// 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-12-22 17:49:51 -05:00
|
|
|
Time::Time(std::shared_ptr<Module> module, Core::System& system, const char* name)
|
|
|
|
|
: Module::Interface(std::move(module), system, 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"},
|
2020-01-04 22:18:54 -05:00
|
|
|
{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-11-12 08:54:58 -05:00
|
|
|
{51, nullptr, "GetStandardSteadyClockRtcValue"},
|
2019-12-22 17:49:51 -05:00
|
|
|
{100, nullptr, "IsStandardUserSystemClockAutomaticCorrectionEnabled"},
|
|
|
|
|
{101, nullptr, "SetStandardUserSystemClockAutomaticCorrectionEnabled"},
|
2018-04-17 18:37:43 +03:00
|
|
|
{102, nullptr, "GetStandardUserSystemClockInitialYear"},
|
2019-12-22 18:10:59 -05:00
|
|
|
{200, &Time::IsStandardNetworkSystemClockAccuracySufficient, "IsStandardNetworkSystemClockAccuracySufficient"},
|
2019-04-10 14:48:37 -04:00
|
|
|
{201, nullptr, "GetStandardUserSystemClockAutomaticCorrectionUpdatedTime"},
|
2019-12-22 17:49:51 -05:00
|
|
|
{300, &Time::CalculateMonotonicSystemClockBaseTimePoint, "CalculateMonotonicSystemClockBaseTimePoint"},
|
2018-11-10 01:25:56 +11:00
|
|
|
{400, &Time::GetClockSnapshot, "GetClockSnapshot"},
|
2020-01-03 22:34:57 -05:00
|
|
|
{401, &Time::GetClockSnapshotFromSystemClockContext, "GetClockSnapshotFromSystemClockContext"},
|
2020-04-14 22:28:41 -04:00
|
|
|
{500, &Time::CalculateStandardUserSystemClockDifferenceByUser, "CalculateStandardUserSystemClockDifferenceByUser"},
|
2020-03-27 10:42:13 -04:00
|
|
|
{501, &Time::CalculateSpanBetween, "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
|