36 pAggregationHistogramTable_{},
37 aggregationHistogram_{}
42 pAggregationHistogramTable_ =
43 statisticRegistrar.
registerTable<std::uint64_t>(
"PacketComponentAggregationHistogram",
44 {
"Components",
"Count"},
46 "Shows a histogram of the number of components contained in transmitted messages.");
51 std::uint64_t u64NumberComponents{components.size()};
53 auto iter = aggregationHistogram_.find(u64NumberComponents);
55 if(iter == aggregationHistogram_.end())
57 aggregationHistogram_.insert({u64NumberComponents,1});
59 pAggregationHistogramTable_->
addRow(u64NumberComponents,
60 {
Any{u64NumberComponents},
67 pAggregationHistogramTable_->
setCell(u64NumberComponents,
void update(const MessageComponents &components)
void setCell(const Key &key, std::size_t columnIndex, const Any &any)
AggregationStatusPublisher()
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.
std::list< MessageComponent > MessageComponents
StatisticTable< Key, Compare, scolumn > * registerTable(const std::string &sName, const StatisticTableLabels &labels, const StatisticProperties &properties=StatisticProperties::NONE, const std::string &sDescription="")
void registerStatistics(StatisticRegistrar ®istrar)
void addRow(const Key &key, const std::vector< Any > &anys={})
The Any class can contain an instance of one of any type in its support type set. ...