From 703d824713f52777fc25ae1d49b5bc8dd4b63126 Mon Sep 17 00:00:00 2001 From: Yoann Le Montagner Date: Fri, 6 Sep 2024 12:59:38 +0200 Subject: [PATCH] feat(Timer): provide access to duration in raw format --- include/geode/basic/timer.hpp | 4 ++++ src/geode/basic/timer.cpp | 12 +++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/geode/basic/timer.hpp b/include/geode/basic/timer.hpp index 95b914e6b..136ebdf34 100644 --- a/include/geode/basic/timer.hpp +++ b/include/geode/basic/timer.hpp @@ -23,6 +23,8 @@ #pragma once +#include + #include #include @@ -35,6 +37,8 @@ namespace geode Timer( Timer&& other ) noexcept; ~Timer(); + absl::Duration raw_duration() const; + std::string duration() const; void reset(); diff --git a/src/geode/basic/timer.cpp b/src/geode/basic/timer.cpp index ad6ab1de4..b8a577ac3 100644 --- a/src/geode/basic/timer.cpp +++ b/src/geode/basic/timer.cpp @@ -37,9 +37,14 @@ namespace geode reset(); } + absl::Duration raw_duration() const + { + return absl::Now() - start_time_; + } + std::string duration() const { - return absl::FormatDuration( absl::Now() - start_time_ ); + return absl::FormatDuration( raw_duration() ); } void reset() @@ -57,6 +62,11 @@ namespace geode Timer::~Timer() = default; + absl::Duration Timer::raw_duration() const + { + return impl_->raw_duration(); + } + std::string Timer::duration() const { return impl_->duration();