00001 #ifndef MYTHTIMER_H_
00002 #define MYTHTIMER_H_
00003
00004 #include <QTime>
00005 #include "mythbaseexp.h"
00006
00007 class MBASE_PUBLIC MythTimer
00008 {
00009 public:
00010 MythTimer() : m_running(false) {}
00011
00012 void start() { m_running = true; m_timer.start(); }
00013 int restart() { int ret = elapsed();
00014 m_timer.restart();
00015 return ret;
00016 }
00017 int elapsed() { int ret = m_timer.elapsed();
00018 if (ret > 86300000) { ret = 0; m_timer.restart(); }
00019 return ret;
00020 }
00021 void stop() { m_running = false; }
00022 bool isRunning() const { return m_running; }
00023
00024 void addMSecs(int ms) { m_timer.addMSecs(ms); }
00025
00026 private:
00027 QTime m_timer;
00028 bool m_running;
00029 };
00030
00031 #endif
00032