2#include "Core/Common/Types.h"
12 using ClockType = chrono::high_resolution_clock;
29 return std::to_string(Time);
35 operator F64() {
return Time; }
44 m_startTime = ClockType::now();
53 m_endTime = ClockType::now();
62 m_startTime = ClockType::now();
92 chrono::time_point<ClockType> endTime;
94 endTime = m_isRunning ? ClockType::now() : m_endTime;
97 return Time{
static_cast<F64
>(chrono::duration_cast<std::chrono::milliseconds>(endTime - m_startTime).count()) };
101 chrono::time_point<ClockType> m_startTime;
102 chrono::time_point<ClockType> m_endTime;
103 bool m_isRunning =
false;
Timer class.
Definition Timer.h:10
void Reset()
Reset timer.
Definition Timer.h:60
Time GetElapsedSeconds() const
Get elapsed time in seconds.
Definition Timer.h:80
void Stop()
Stop timer.
Definition Timer.h:51
Time GetElapsedMilliseconds() const
Get elapsed time in milliseconds.
Definition Timer.h:90
void Start()
Start timer.
Definition Timer.h:42
bool IsRunning() const
Check if timer is running.
Definition Timer.h:70