34 _start = std::chrono::steady_clock::now();
43 auto now = std::chrono::steady_clock::now();
44 int64_t ms = std::chrono::duration_cast<std::chrono::milliseconds>(now - _start).
count();
55 return std::chrono::duration_cast<std::chrono::milliseconds>(
56 std::chrono::steady_clock::now() - _start
65 return std::chrono::duration_cast<std::chrono::microseconds>(
66 std::chrono::steady_clock::now() - _start
75 return std::chrono::duration_cast<std::chrono::nanoseconds>(
76 std::chrono::steady_clock::now() - _start
102 std::chrono::steady_clock::time_point _start;
Monotonic elapsed-time measurement using std::chrono::steady_clock.
Definition elapsedtimer.h:23
bool isValid() const
Returns true if the timer has been started and not invalidated.
Definition elapsedtimer.h:93
void start()
Records the current time as the start point.
Definition elapsedtimer.h:33
int64_t elapsed() const
Returns milliseconds elapsed since start.
Definition elapsedtimer.h:54
void invalidate()
Invalidates the timer, marking it as not running.
Definition elapsedtimer.h:98
int64_t restart()
Restarts the timer and returns the elapsed time since the previous start.
Definition elapsedtimer.h:42
ElapsedTimer()
Constructs and starts the timer.
Definition elapsedtimer.h:28
int64_t elapsedNs() const
Returns nanoseconds elapsed since start.
Definition elapsedtimer.h:74
int64_t elapsedUs() const
Returns microseconds elapsed since start.
Definition elapsedtimer.h:64
bool hasExpired(int64_t ms) const
Returns true if the elapsed time is at least ms milliseconds.
Definition elapsedtimer.h:85
Dynamic array container wrapping std::vector.
Definition list.h:40
size_t count(const T &value) const
Returns the number of occurrences of value.
Definition list.h:629
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19