void startWithDeadline(MonotonicTime deadline)
void startPeriodic(MonotonicDuration period)
void startWithDelay(MonotonicDuration delay)
virtual void handleTimerEvent(const TimerEvent &event)=0
static MonotonicDuration getInfinite()
void startOneShotWithDelay(MonotonicDuration delay)
virtual void handleDeadline(MonotonicTime current)
MonotonicTime getDeadline() const
void startOneShotWithDeadline(MonotonicTime deadline)
MonotonicDuration period_