33 #include "trm/Timer.h"
38 #define PVOID(p) ((void *)(p))
39 #define PQTIMER_(p) ((QtTimer *)(p))
40 #define PQTIMER() (PQTIMER_(data))
41 #define QTIMER() (*(PQTIMER()))
43 Timer::Timer(
const std::string &token)
44 : data(PVOID(new TRM::QtTimer())), token(token)
48 void Timer::schedule(TimerTask &task, int64_t milliSecs,
bool absolute)
51 qint64 now = QDateTime::currentMSecsSinceEpoch();
53 future = now + milliSecs;
57 milliSecs = (milliSecs - now);
58 if (milliSecs < 0) milliSecs = 0;
60 std::cout <<
"Scheduling Timer " << getToken() << std::endl;
61 QTIMER().schedule(task, future, milliSecs);