64 #include <shared_mutex>
65 #include <unordered_map>
67 #include "../base/macros.h"
102 void update(uint64_t seq, uint64_t guid = 0) noexcept;
113 [[nodiscard]] uint64_t get_total() const noexcept;
120 [[nodiscard]] uint64_t get_lost() const noexcept;
123 struct Number final {
125 uint64_t expected{0};
129 std::unordered_map<uint64_t, Number> number_map_;
130 mutable std::shared_mutex mtx_;
Tracks expected and lost sample counts grouped by sender GUID.
Definition: calculate_sample.h:80
CalculateSample() noexcept
Constructs an empty counter.
#define VLINK_EXPORT
Definition: macros.h:81
#define VLINK_DISALLOW_COPY_AND_ASSIGN(classname)
Deletes the copy constructor and copy-assignment operator of classname.
Definition: macros.h:174