1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-24 21:37:34 +00:00

Kernel: Make TimerQueue use AK::Time in interface

This commit is contained in:
Ben Wiederhake 2021-02-28 01:36:34 +01:00 committed by Andreas Kling
parent 2b6546c40a
commit 91c72faa3c
2 changed files with 5 additions and 5 deletions

View file

@ -137,12 +137,12 @@ void TimerQueue::add_timer_locked(NonnullRefPtr<Timer> timer)
} }
} }
TimerId TimerQueue::add_timer(clockid_t clock_id, timeval& deadline, Function<void()>&& callback) TimerId TimerQueue::add_timer(clockid_t clock_id, const Time& deadline, Function<void()>&& callback)
{ {
// FIXME: Should use AK::Time internally // FIXME: Should use AK::Time internally
auto expires = TimeManagement::the().current_time(clock_id).value(); auto expires = Time::from_timespec(TimeManagement::the().current_time(clock_id).value());
timespec_add_timeval(expires, deadline, expires); expires = expires + deadline;
return add_timer(adopt(*new Timer(clock_id, Time::from_timespec(expires), move(callback)))); return add_timer(adopt(*new Timer(clock_id, expires, move(callback))));
} }
bool TimerQueue::cancel_timer(TimerId id) bool TimerQueue::cancel_timer(TimerId id)

View file

@ -93,7 +93,7 @@ public:
TimerId add_timer(NonnullRefPtr<Timer>&&); TimerId add_timer(NonnullRefPtr<Timer>&&);
RefPtr<Timer> add_timer_without_id(clockid_t, const Time&, Function<void()>&&); RefPtr<Timer> add_timer_without_id(clockid_t, const Time&, Function<void()>&&);
TimerId add_timer(clockid_t, timeval& timeout, Function<void()>&& callback); TimerId add_timer(clockid_t, const Time& timeout, Function<void()>&& callback);
bool cancel_timer(TimerId id); bool cancel_timer(TimerId id);
bool cancel_timer(Timer&); bool cancel_timer(Timer&);
bool cancel_timer(NonnullRefPtr<Timer>&& timer) bool cancel_timer(NonnullRefPtr<Timer>&& timer)