From ee45d0eaa96e40dc605aab277e2a6b28cab6c7ef Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Sun, 3 Oct 2021 16:43:42 +0200 Subject: stats: added OperationTiming::Scope::Cancel --- zencore/include/zencore/stats.h | 2 ++ zencore/stats.cpp | 11 ++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/zencore/include/zencore/stats.h b/zencore/include/zencore/stats.h index dfa8dac34..2e567d614 100644 --- a/zencore/include/zencore/stats.h +++ b/zencore/include/zencore/stats.h @@ -209,6 +209,8 @@ public: Scope(OperationTiming& Outer); ~Scope(); + void Cancel(); + private: OperationTiming& m_Outer; uint64_t m_StartTick; diff --git a/zencore/stats.cpp b/zencore/stats.cpp index 34dc2828f..47efba76b 100644 --- a/zencore/stats.cpp +++ b/zencore/stats.cpp @@ -398,7 +398,16 @@ OperationTiming::Scope::Scope(OperationTiming& Outer) : m_Outer(Outer), m_StartT OperationTiming::Scope::~Scope() { - m_Outer.Update(GetHifreqTimerValue() - m_StartTick); + if (m_StartTick != 0) + { + m_Outer.Update(GetHifreqTimerValue() - m_StartTick); + } +} + +void +OperationTiming::Scope::Cancel() +{ + m_StartTick = 0; } ////////////////////////////////////////////////////////////////////////// -- cgit v1.2.3