EMANE  1.2.1
EMANE::Utils::CommonLayerStatistics Class Reference

Common NEM layer statistics and drop reason tables. More...

#include <commonlayerstatistics.h>

Public Member Functions

 CommonLayerStatistics (const StatisticTableLabels &unicastDropTableLabels, const StatisticTableLabels &broadcastDropTableLabels={}, const std::string &sInstance={})
 
 ~CommonLayerStatistics ()
 
void registerStatistics (StatisticRegistrar &statisticRegistrar)
 
void processInbound (const UpstreamPacket &pkt)
 
void processOutbound (const UpstreamPacket &pkt, Microseconds delay, size_t dropCode={})
 
void processInbound (const DownstreamPacket &pkt)
 
void processOutbound (const DownstreamPacket &pkt, Microseconds delay, size_t dropCode={}, bool bSelfGenerated={})
 

Detailed Description

Common NEM layer statistics and drop reason tables.

Definition at line 52 of file commonlayerstatistics.h.

Constructor & Destructor Documentation

◆ CommonLayerStatistics()

EMANE::Utils::CommonLayerStatistics::CommonLayerStatistics ( const StatisticTableLabels unicastDropTableLabels,
const StatisticTableLabels broadcastDropTableLabels = {},
const std::string &  sInstance = {} 
)

Creates a CommonLayerStatistics instance

Parameters
unicastDropTableLabelsUnicast drop table row labels
broadcastDropTableLabelsBroadcast drop table row labels. Defaults to Unicast drop table labels.
sInstanceString to append to all statistic names

Definition at line 740 of file commonlayerstatistics.cc.

◆ ~CommonLayerStatistics()

EMANE::Utils::CommonLayerStatistics::~CommonLayerStatistics ( )

Destroys an instance

Definition at line 747 of file commonlayerstatistics.cc.

Member Function Documentation

◆ processInbound() [1/2]

void EMANE::Utils::CommonLayerStatistics::processInbound ( const UpstreamPacket pkt)

Processes statistics for an inbound upstream packet

Parameters
pktInbound packet

Definition at line 757 of file commonlayerstatistics.cc.

◆ processInbound() [2/2]

void EMANE::Utils::CommonLayerStatistics::processInbound ( const DownstreamPacket pkt)

Processes statistics for an inbound downstream packet

Parameters
pktOutbound packet

Definition at line 771 of file commonlayerstatistics.cc.

◆ processOutbound() [1/2]

void EMANE::Utils::CommonLayerStatistics::processOutbound ( const UpstreamPacket pkt,
Microseconds  delay,
size_t  dropCode = {} 
)

Processes statistics for an outbound upstream packet

Parameters
pktInbound packet
delayProcessing duration in microseconds
dropCodeDrop code label index. Default is no drop.

Definition at line 763 of file commonlayerstatistics.cc.

◆ processOutbound() [2/2]

void EMANE::Utils::CommonLayerStatistics::processOutbound ( const DownstreamPacket pkt,
Microseconds  delay,
size_t  dropCode = {},
bool  bSelfGenerated = {} 
)

Processes statistics for an outbound downstream packet

Parameters
pktInbound packet
delayProcessing duration in microseconds
dropCodeDrop code label index. Default is no drop.
bSelfGeneratedFlag indicating whether the outbound packet was self generated

Definition at line 777 of file commonlayerstatistics.cc.

◆ registerStatistics()

void EMANE::Utils::CommonLayerStatistics::registerStatistics ( StatisticRegistrar statisticRegistrar)

Registers all statistics and tables

Parameters
statisticRegistrarStatistic registrar reference
Exceptions
RegistrarExceptionwhen a error occurs during registration.

Definition at line 751 of file commonlayerstatistics.cc.


The documentation for this class was generated from the following files: