10 #ifndef ICARUSALG_UTILITIES_ATOMICPASSCOUNTER_H
11 #define ICARUSALG_UTILITIES_ATOMICPASSCOUNTER_H
21 namespace icarus::ns::util {
37 template <
typename Count =
unsigned int>
41 static_assert(std::atomic<Count>::is_always_lock_free,
42 "Only types whose atomic type is non-blocking are supported."
76 #endif // ICARUSALG_UTILITIES_ATOMICPASSCOUNTER_H
Count_t total() const
Returns the total number of registered events.
Count_t passed() const
Returns the number of events which "passed".
Class to keep count of a pass/fail result.
Count_t failed() const
Returns the number of events which "failed".
Count_t const & totalRef() const
Direct read-only access to data members for derived classes.
Count Count_t
Type used for counters.
bool empty() const
Returns whether there is no event recorded yet.
Class counting pass/fail events.
Count_t const & passedRef() const
Direct read-only access to data members for derived classes.
Class counting pass/fail events.