2022-04-23 10:59:50 +02:00
|
|
|
// SPDX-FileCopyrightText: Copyright 2019 yuzu Emulator Project
|
|
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
2019-12-22 23:49:51 +01:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "core/hle/service/service.h"
|
|
|
|
|
2020-11-26 21:19:08 +01:00
|
|
|
namespace Core {
|
|
|
|
class System;
|
|
|
|
}
|
|
|
|
|
2019-12-22 23:49:51 +01:00
|
|
|
namespace Service::Time {
|
|
|
|
|
|
|
|
namespace TimeZone {
|
|
|
|
class TimeZoneContentManager;
|
|
|
|
}
|
|
|
|
|
|
|
|
class ITimeZoneService final : public ServiceFramework<ITimeZoneService> {
|
|
|
|
public:
|
2020-11-26 21:19:08 +01:00
|
|
|
explicit ITimeZoneService(Core::System& system_,
|
|
|
|
TimeZone::TimeZoneContentManager& time_zone_manager_);
|
2019-12-22 23:49:51 +01:00
|
|
|
|
|
|
|
private:
|
|
|
|
void GetDeviceLocationName(Kernel::HLERequestContext& ctx);
|
|
|
|
void LoadTimeZoneRule(Kernel::HLERequestContext& ctx);
|
|
|
|
void ToCalendarTime(Kernel::HLERequestContext& ctx);
|
|
|
|
void ToCalendarTimeWithMyRule(Kernel::HLERequestContext& ctx);
|
|
|
|
void ToPosixTime(Kernel::HLERequestContext& ctx);
|
2020-01-23 05:19:25 +01:00
|
|
|
void ToPosixTimeWithMyRule(Kernel::HLERequestContext& ctx);
|
2019-12-22 23:49:51 +01:00
|
|
|
|
|
|
|
private:
|
|
|
|
TimeZone::TimeZoneContentManager& time_zone_content_manager;
|
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace Service::Time
|