timer.cpp
365 Bytes
#include <escher/timer.h>
Timer::Timer(uint32_t period) :
m_period(period),
m_numberOfTicksBeforeFire(period)
{
}
bool Timer::tick() {
m_numberOfTicksBeforeFire--;
if (m_numberOfTicksBeforeFire == 0) {
bool needRedraw = fire();
reset();
return needRedraw;
}
return false;
}
void Timer::reset() {
m_numberOfTicksBeforeFire = m_period;
}