diff options
Diffstat (limited to 'Sluift/Watchdog.cpp')
-rw-r--r-- | Sluift/Watchdog.cpp | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/Sluift/Watchdog.cpp b/Sluift/Watchdog.cpp index 6494850..a99d63a 100644 --- a/Sluift/Watchdog.cpp +++ b/Sluift/Watchdog.cpp @@ -13,38 +13,38 @@ static const int INTERVAL_MS = 500; using namespace Swift; -Watchdog::Watchdog(int timeout, TimerFactory* timerFactory) : - remainingTime(timeout), - timerFactory(timerFactory), - timedOut(false) { - Sluift::globals.interruptRequested = 0; - - int nextTimeout = remainingTime >= 0 ? std::min(remainingTime, INTERVAL_MS) : INTERVAL_MS; - - timer = timerFactory->createTimer(nextTimeout); - timer->onTick.connect(boost::bind(&Watchdog::handleTimerTick, this)); - remainingTime -= nextTimeout; - timer->start(); +Watchdog::Watchdog(int timeout, TimerFactory* timerFactory) : + remainingTime(timeout), + timerFactory(timerFactory), + timedOut(false) { + Sluift::globals.interruptRequested = 0; + + int nextTimeout = remainingTime >= 0 ? std::min(remainingTime, INTERVAL_MS) : INTERVAL_MS; + + timer = timerFactory->createTimer(nextTimeout); + timer->onTick.connect(boost::bind(&Watchdog::handleTimerTick, this)); + remainingTime -= nextTimeout; + timer->start(); } Watchdog::~Watchdog() { - if (timer) { - timer->stop(); - } + if (timer) { + timer->stop(); + } } void Watchdog::handleTimerTick() { - if (Sluift::globals.interruptRequested || remainingTime == 0) { - timedOut = true; - } - else { - int nextTimeout = remainingTime >= 0 ? std::min(remainingTime, INTERVAL_MS) : INTERVAL_MS; - if (nextTimeout != INTERVAL_MS) { - timer->onTick.disconnect(boost::bind(&Watchdog::handleTimerTick, this)); - timer = timerFactory->createTimer(nextTimeout); - timer->onTick.connect(boost::bind(&Watchdog::handleTimerTick, this)); - } - remainingTime -= nextTimeout; - timer->start(); - } + if (Sluift::globals.interruptRequested || remainingTime == 0) { + timedOut = true; + } + else { + int nextTimeout = remainingTime >= 0 ? std::min(remainingTime, INTERVAL_MS) : INTERVAL_MS; + if (nextTimeout != INTERVAL_MS) { + timer->onTick.disconnect(boost::bind(&Watchdog::handleTimerTick, this)); + timer = timerFactory->createTimer(nextTimeout); + timer->onTick.connect(boost::bind(&Watchdog::handleTimerTick, this)); + } + remainingTime -= nextTimeout; + timer->start(); + } } |