33 #ifndef EMANEMODELSTDMAQUEUESTATUSTABLEPUBLISHER_HEADER_ 34 #define EMANEMODELSTDMAQUEUESTATUSTABLEPUBLISHER_HEADER_ 67 void drop(std::uint8_t u8Queue,
71 void dequeue(std::uint8_t u8RequestQueue,
72 std::uint8_t u8ActualQueue,
75 void enqueue(std::uint8_t u8Queue);
80 using StatusTableInfo = std::map<std::uint8_t,std::tuple<std::uint64_t,
90 StatusTableInfo statusTableInfo_;
94 using FragmentHistogram = std::map<std::uint8_t,std::array<std::uint64_t,10>>;
96 FragmentHistogram fragmentHistogram_;
98 std::array<StatisticNumeric<std::uint64_t> *,5> pHighWaterMarkQueue_;
99 std::array<std::uint64_t,5> depthQueueInfo_;
100 std::array<std::uint64_t,5> highWaterMarkQueueInfo_;
106 #endif // EMANEMODELSTDMAQUEUESTATUSTABLEPUBLISHER_HEADER_
The StatisticRegistrar allows NEM layers to register statistics and statistic tables. Statistics and Statistic tables are owned by the emulator framework and a borrowed reference is returned to the registering NEM layer.
void drop(std::uint8_t u8Queue, DropReason reason, size_t count)
std::list< MessageComponent > MessageComponents
Queue statistic and statistic table status publisher.
void dequeue(std::uint8_t u8RequestQueue, std::uint8_t u8ActualQueue, const MessageComponents &components)
void enqueue(std::uint8_t u8Queue)
void registerStatistics(StatisticRegistrar ®istrar)