#include "Timer.h" #include "TimerSet.h" void Timer::timeoutRequest(int seconds) { timeToGo = seconds; } Timer::Timer(std::function action) : timeToGo(-1), doExpired(action) { TimerSet::Instance().addATimer(this); } void Timer::tick() { if (isExpired()) { doExpired(); } } bool Timer::isExpired() { if (timeToGo > 0) { if (--timeToGo == 0) { return true; } } return false; }