From 5c90d22f3d92b9be818b19e03dd57eb217eb6567 Mon Sep 17 00:00:00 2001 From: Fernando Sahmkow Date: Fri, 14 Feb 2020 10:56:27 -0400 Subject: Kernel: Implement Time Manager. --- src/core/hle/kernel/time_manager.h | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/core/hle/kernel/time_manager.h (limited to 'src/core/hle/kernel/time_manager.h') diff --git a/src/core/hle/kernel/time_manager.h b/src/core/hle/kernel/time_manager.h new file mode 100644 index 000000000..b760311f1 --- /dev/null +++ b/src/core/hle/kernel/time_manager.h @@ -0,0 +1,36 @@ +// Copyright 2020 yuzu Emulator Project +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include + +#include "core/hle/kernel/object.h" + +namespace Core { +class System; +} // namespace Core + +namespace Core::Timing { +struct EventType; +} // namespace Core::Timing + +namespace Kernel { + +class Thread; + +class TimeManager { +public: + TimeManager(Core::System& system); + + void ScheduleTimeEvent(Handle& event_handle, Thread* timetask, s64 nanoseconds); + + void UnscheduleTimeEvent(Handle event_handle); + +private: + Core::System& system; + std::shared_ptr time_manager_event_type; +}; + +} // namespace Kernel -- cgit v1.2.3