36 auto now = std::chrono::steady_clock::now();
37 auto duration = std::chrono::duration_cast<std::chrono::microseconds>(now -
_start);
38 return duration.count() / 1000000.0;
46 auto now = std::chrono::steady_clock::now();
47 auto duration = std::chrono::duration_cast<std::chrono::microseconds>(now -
_start);
49 return duration.count() / 1000000.0;
57 std::this_thread::sleep_for(std::chrono::milliseconds(milliseconds));
61 std::chrono::steady_clock::time_point
_start{std::chrono::steady_clock::now()};
Utility class to measure frame durations.
std::chrono::steady_clock::time_point _start
double elapsed() const
Get the elapsed time in seconds since last reset.
double tick()
Get elapsed time and automatically reset (optimized for game loops)
static void sleepMilliseconds(int milliseconds)
Sleep for specified milliseconds (centralized time management)
void reset()
Reset the timer to the current time.