diff options
author | Aki <please@ignore.pl> | 2022-03-07 23:13:50 +0100 |
---|---|---|
committer | Aki <please@ignore.pl> | 2022-03-07 23:13:50 +0100 |
commit | d45c12bbbb34c2e4e40d17080d888e2c7a4ea06e (patch) | |
tree | 4277dbfd9ebbb0c315e643848dc1818732114d09 /Stars45/Clock.h | |
parent | a8477c1483374bb0aeb3eb9ac9caabe68a4afbb9 (diff) | |
download | starshatter-d45c12bbbb34c2e4e40d17080d888e2c7a4ea06e.zip starshatter-d45c12bbbb34c2e4e40d17080d888e2c7a4ea06e.tar.gz starshatter-d45c12bbbb34c2e4e40d17080d888e2c7a4ea06e.tar.bz2 |
New Clock uses counters instead of epoch from now on
Diffstat (limited to 'Stars45/Clock.h')
-rw-r--r-- | Stars45/Clock.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Stars45/Clock.h b/Stars45/Clock.h index a0b3c4f..e2ddcb0 100644 --- a/Stars45/Clock.h +++ b/Stars45/Clock.h @@ -13,21 +13,28 @@ class Clock { public: + using inner_clock = std::chrono::high_resolution_clock; + using elapsed_duration = std::chrono::milliseconds; + using count_type = elapsed_duration::rep; + Clock(); + void Set(); void Reset(); double Step(); double Delta() const; double GuiDelta() const; + double TimeCompression() const; + count_type GameTime() const; + count_type RealTime() const; void SetTimeCompression(double compression); - double TimeCompression() const; protected: - using inner_clock = std::chrono::high_resolution_clock; - inner_clock::time_point m_epoch; inner_clock::time_point m_point; + elapsed_duration m_game_elapsed; + elapsed_duration m_real_elapsed; double m_compression; double m_delta; double m_gui_delta; |