diff options
author | Vicent Marti | 2008-06-14 14:44:29 +0000 |
---|---|---|
committer | Vicent Marti | 2008-06-14 14:44:29 +0000 |
commit | d0b27cf9c66b9281899acf826cb205e19dcb7260 (patch) | |
tree | 74e813b1d1f081f35f41ca7a95da5d048951b9e7 /engines/kyra/timer.h | |
parent | d51a0cab3fe494698f001d81d5d86cea7cd0395b (diff) | |
parent | 91d3ea31359950b59ee46af8355cc0f5790257e5 (diff) | |
download | scummvm-rg350-d0b27cf9c66b9281899acf826cb205e19dcb7260.tar.gz scummvm-rg350-d0b27cf9c66b9281899acf826cb205e19dcb7260.tar.bz2 scummvm-rg350-d0b27cf9c66b9281899acf826cb205e19dcb7260.zip |
Merged trunk into the GUI branch.
Fixed MSVS9 project files.
svn-id: r32702
Diffstat (limited to 'engines/kyra/timer.h')
-rw-r--r-- | engines/kyra/timer.h | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/engines/kyra/timer.h b/engines/kyra/timer.h index 0991f0a1b1..691bac3fb5 100644 --- a/engines/kyra/timer.h +++ b/engines/kyra/timer.h @@ -26,7 +26,7 @@ #ifndef KYRA_TIMER_H #define KYRA_TIMER_H -#include "kyra/kyra.h" +#include "kyra/kyra_v1.h" #include "common/list.h" #include "common/stream.h" @@ -49,9 +49,11 @@ struct TimerEntry { class TimerManager { public: - TimerManager(KyraEngine *vm, OSystem *sys) : _vm(vm), _system(sys), _timers(), _nextRun(0) {} + TimerManager(KyraEngine_v1 *vm, OSystem *sys) : _vm(vm), _system(sys), _timers(), _nextRun(0), _isPaused(0), _pauseStart(0) {} ~TimerManager() { reset(); } + void pause(bool p); + void reset(); void addTimer(uint8 id, TimerFunc *func, int countdown, bool enabled); @@ -77,15 +79,26 @@ public: private: void resync(); - KyraEngine *_vm; + KyraEngine_v1 *_vm; OSystem *_system; Common::List<TimerEntry> _timers; uint32 _nextRun; + uint _isPaused; + uint32 _pauseStart; + typedef Common::List<TimerEntry>::iterator Iterator; typedef Common::List<TimerEntry>::const_iterator CIterator; }; +class PauseTimer { +public: + PauseTimer(TimerManager &timer) : _timer(timer) { _timer.pause(true); } + ~PauseTimer() { _timer.pause(false); } +private: + TimerManager &_timer; +}; + } // end of namespace Kyra #endif |