123456789101112131415161718192021222324252627282930313233343536373839 |
- #pragma once
- #include "Time.h"
- namespace baselib
- {
- BASELIB_CPP_INTERFACE
- {
-
-
-
-
-
-
-
- class Stopwatch
- {
- public:
- static Stopwatch StartNew() { return Stopwatch(); }
- high_precision_clock::duration GetElapsedTime() const
- {
- return high_precision_clock::duration_from_ticks(high_precision_clock::now_in_ticks() - m_StartTime);
- }
- high_precision_clock::duration Restart()
- {
- high_precision_clock::duration elapsed = GetElapsedTime();
- m_StartTime = high_precision_clock::now_in_ticks();
- return elapsed;
- }
- private:
- Stopwatch() : m_StartTime(high_precision_clock::now_in_ticks()) {}
- Baselib_Timer_Ticks m_StartTime;
- };
- }
- }
|