summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/time_manager.h
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-22 15:27:40 +0100
committerFernandoS27 <fsahmkow27@gmail.com>2020-02-22 16:18:07 +0100
commitd219a96cc828d17932beebead209ba696b92a911 (patch)
tree1e973969f39a1901650626699117f93a4d731755 /src/core/hle/kernel/time_manager.h
parentKernel: Implement Scheduler locks (diff)
downloadyuzu-d219a96cc828d17932beebead209ba696b92a911.tar
yuzu-d219a96cc828d17932beebead209ba696b92a911.tar.gz
yuzu-d219a96cc828d17932beebead209ba696b92a911.tar.bz2
yuzu-d219a96cc828d17932beebead209ba696b92a911.tar.lz
yuzu-d219a96cc828d17932beebead209ba696b92a911.tar.xz
yuzu-d219a96cc828d17932beebead209ba696b92a911.tar.zst
yuzu-d219a96cc828d17932beebead209ba696b92a911.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/time_manager.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/core/hle/kernel/time_manager.h b/src/core/hle/kernel/time_manager.h
index b760311f1..eaec486d1 100644
--- a/src/core/hle/kernel/time_manager.h
+++ b/src/core/hle/kernel/time_manager.h
@@ -20,12 +20,19 @@ namespace Kernel {
class Thread;
+/**
+ * The `TimeManager` takes care of scheduling time events on threads and executes their TimeUp
+ * method when the event is triggered.
+ */
class TimeManager {
public:
- TimeManager(Core::System& system);
+ explicit TimeManager(Core::System& system);
+ /// Schedule a time event on `timetask` thread that will expire in 'nanoseconds'
+ /// returns a non-invalid handle in `event_handle` if correctly scheduled
void ScheduleTimeEvent(Handle& event_handle, Thread* timetask, s64 nanoseconds);
+ /// Unschedule an existing time event
void UnscheduleTimeEvent(Handle event_handle);
private: