diff options
author | Vegard Storheil Eriksen <zyp@jvnv.net> | 2011-01-29 19:47:44 +0100 |
---|---|---|
committer | Vegard Storheil Eriksen <zyp@jvnv.net> | 2011-01-29 19:47:44 +0100 |
commit | e14b2f145ee43a652d71f53e3f645c58bb7b8e6f (patch) | |
tree | 0775db4b211858b3464cfc24413e8d9599e13979 /time.cpp | |
parent | f94354c1b5c02be567ebd376adfc720af6ec1b8f (diff) |
Added Clock and Timer.
Diffstat (limited to 'time.cpp')
-rw-r--r-- | time.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/time.cpp b/time.cpp new file mode 100644 index 0000000..fb2137d --- /dev/null +++ b/time.cpp @@ -0,0 +1,41 @@ +#include "time.h" + +Clock::Clock() { + reset(); + running = false; +} + +void Clock::reset() { + base = 0; + clock.Reset(); +} + +void Clock::start() { + running = true; + clock.Reset(); +} + +void Clock::stop() { + running = false; + base += clock.GetElapsedTime(); +} + +float Clock::elapsed() const { + if(running) { + return base + clock.GetElapsedTime(); + } else { + return base; + } +} + +Timer::Timer(const Clock& clock_) : clock(clock_) { + reset(); +} + +void Timer::reset() { + starttime = clock.elapsed(); +} + +float Timer::elapsed() const { + return clock.elapsed() - starttime; +} |