108 void Start() noexcept;
116 void Stop() noexcept;
122 std::uint64_t Count() const noexcept;
128 std::chrono::microseconds Time() const noexcept;
134 std::chrono::microseconds MeanDuration() const noexcept;
137 std::optional<
std::chrono::steady_clock::time_point> m_start;
138 std::chrono::microseconds m_time;
139 std::uint64_t m_count;
161 virtual operator Safe::String() const = 0;
168 return static_cast<std::string
>(
static_cast<Safe::String>(*this));
217 Safe::Unique<Store> m_store;
Stopwatch for measuring execution time of operations.
Definition telemetry.hxx:68
Clock() noexcept
Construct zeroed clock counters.
Owned UTF-8 text composed of StormByte::Safe::CString.
Definition string.hxx:97
Abstract session telemetry base with a protected clock drawer.
Definition telemetry.hxx:150
Telemetry() noexcept
Construct an empty telemetry drawer.
virtual ~Telemetry() noexcept
Virtual destructor.
Root namespace of the StormByte suite.
DLL-safe shared and unique owners.
#define STORMBYTE_PUBLIC
Definition visibility.h:52