44   pNumDownstreamUnicastDataDiscardDueToRetries_{},
    45   pNumDownstreamUnicastRtsCtsDataDiscardDueToRetries_{},
    46   pNumUpstreamUnicastDataDiscardDueToSinr_{},
    47   pNumUpstreamBroadcastDataDiscardDueToSinr_{},
    48   pNumUpstreamUnicastDataDiscardDueToClobberRxDuringTx_{},
    49   pNumUpstreamBroadcastDataDiscardDueToClobberRxDuringTx_{},
    50   pNumUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy_{},
    51   pNumUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy_{},
    52   pNumDownstreamUnicastDataDiscardDueToTxop_{},
    53   pNumDownstreamBroadcastDataDiscardDueToTxop_{},
    54   pNumUpstreamUnicastRtsCtsDataRxFromPhy_{},
    55   pNumUpstreamUnicastCtsRxFromPhy_{},
    56   pNumUpstreamUnicastDataNoiseHiddenRx_{},
    57   pNumUpstreamBroadcastDataNoiseHiddenRx_{},
    58   pNumUpstreamUnicastDataNoiseRxCommon_{},
    59   pNumUpstreamBroadcastDataNoiseRxCommon_{},
    60   pNumOneHopNbrHighWaterMark_{},
    61   pNumTwoHopNbrHighWaterMark_{},
    62   pNumRxOneHopNbrListEvents_{},
    63   pNumRxOneHopNbrListInvalidEvents_{},
    64   pNumTxOneHopNbrListEvents_{}
    80   pNumDownstreamUnicastDataDiscardDueToRetries_ =
    81     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numDownstreamUnicastDataDiscardDueToRetries", 
    84   pNumDownstreamUnicastRtsCtsDataDiscardDueToRetries_ =
    85     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numDownstreamUnicastRtsCtsDataDiscardDueToRetries", 
    88   pNumUpstreamUnicastDataDiscardDueToSinr_ = 
    89     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastDataDiscardDueToSinr", 
    91   pNumUpstreamBroadcastDataDiscardDueToSinr_ = 
    92     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamBroadcastDataDiscardDueToSinr", 
    95   pNumUpstreamUnicastDataDiscardDueToClobberRxDuringTx_ = 
    96     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastDataDiscardDueToClobberRxDuringTx", 
    99   pNumUpstreamBroadcastDataDiscardDueToClobberRxDuringTx_ =
   100     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamBroadcastDataDiscardDueToClobberRxDuringTx", 
   103   pNumUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy_ = 
   104     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy", 
   107   pNumUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy_ = 
   108     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy", 
   110   pNumDownstreamUnicastDataDiscardDueToTxop_ = 
   111     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numDownstreamUnicastDataDiscardDueToTxop",
   113   pNumDownstreamBroadcastDataDiscardDueToTxop_ =
   114     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numDownstreamBroadcastDataDiscardDueToTxop", 
   117   pNumUpstreamUnicastDataNoiseHiddenRx_ =
   118     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastDataNoiseHiddenRx", 
   121   pNumUpstreamBroadcastDataNoiseHiddenRx_ =
   122     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamBroadcastDataNoiseHiddenRx", 
   125   pNumUpstreamUnicastDataNoiseRxCommon_ = 
   126     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastDataNoiseRxCommon", 
   129   pNumUpstreamBroadcastDataNoiseRxCommon_ =
   130     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamBroadcastDataNoiseRxCommon", 
   133   pNumUpstreamUnicastRtsCtsDataRxFromPhy_ =
   134     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastRtsCtsDataRxFromPhy", 
   137   pNumUpstreamUnicastCtsRxFromPhy_ = 
   138     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numUpstreamUnicastRtsCtsRxFromPhy",  
   141   pNumOneHopNbrHighWaterMark_ = 
   142     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numOneHopNbrHighWaterMark", 
   145   pNumTwoHopNbrHighWaterMark_ = 
   146     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numTwoHopNbrHighWaterMark",
   149   pNumRxOneHopNbrListEvents_ =
   150     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numRxOneHopNbrListEvents",
   152   pNumRxOneHopNbrListInvalidEvents_ = 
   153     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numRxOneHopNbrListInvalidEvents",
   155   pNumTxOneHopNbrListEvents_ =
   156     statisticRegistrar.
registerNumeric<std::uint32_t>(
"numTxOneHopNbrListEvents",
   171   ++*pNumUpstreamUnicastRtsCtsDataRxFromPhy_;
   184   ++*pNumUpstreamUnicastCtsRxFromPhy_;
   198   ++*pNumDownstreamUnicastDataDiscardDueToRetries_;
   211   ++*pNumDownstreamUnicastRtsCtsDataDiscardDueToRetries_;
   225   ++*pNumUpstreamUnicastDataDiscardDueToSinr_;
   238   ++*pNumUpstreamBroadcastDataDiscardDueToSinr_;
   251   ++*pNumUpstreamUnicastDataDiscardDueToClobberRxDuringTx_;
   264   ++*pNumUpstreamBroadcastDataDiscardDueToClobberRxDuringTx_;
   277   ++*pNumUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy_;
   290   ++*pNumUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy_;
   304   ++*pNumDownstreamUnicastDataDiscardDueToTxop_;
   318   ++*pNumDownstreamBroadcastDataDiscardDueToTxop_;
   331   ++*pNumUpstreamUnicastDataNoiseHiddenRx_;
   345   ++*pNumUpstreamBroadcastDataNoiseHiddenRx_;
   359   ++*pNumUpstreamBroadcastDataNoiseRxCommon_;
   372   ++*pNumUpstreamUnicastDataNoiseRxCommon_;
   385    if(*pNumOneHopNbrHighWaterMark_ < num)
   387        *pNumOneHopNbrHighWaterMark_ = num;
   402    if(*pNumTwoHopNbrHighWaterMark_ < num)
   404       *pNumTwoHopNbrHighWaterMark_ = num;
   418   ++*pNumRxOneHopNbrListEvents_;
   431   ++*pNumRxOneHopNbrListInvalidEvents_;
   445   ++*pNumTxOneHopNbrListEvents_;
 void updateTwoHopNbrHighWaterMark(size_t num)
set the two hop nbr high water mark 
 
void incrementUpstreamUnicastDataDiscardDueToSinr()
increment unicast data discard due to sinr 
 
void incrementUpstreamBroadcastDataDiscardDueToSinr()
increment braodcast data discard due to sinr 
 
void incrementRxOneHopNbrListEventCount()
increment number rx one hop nbr list events 
 
MACStatistics(EMANE::NEMId)
constructor 
 
void incrementTxOneHopNbrListEventCount()
increment number tx one hop nbr list events 
 
void incrementUpstreamUnicastDataDiscardDueToClobberRxDuringTx()
increment unicast data discard due to collision rx during tx 
 
void incrementUpstreamBroadcastNoiseHiddenRx()
increment braodcastcast data collision due to hidden rx 
 
void incrementDownstreamUnicastRtsCtsDataDiscardDueToRetries()
increment braodcast data discard due to exhausted retries 
 
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. 
 
~MACStatistics()
destructor 
 
void incrementUpstreamBroadcastNoiseRxCommon()
increment unicastcast data collision due to rx common 
 
void updateOneHopNbrHighWaterMark(size_t num)
set the one hop nbr high water mark 
 
void incrementUpstreamUnicastNoiseRxCommon()
increment braodcastcast data collision due to rx common 
 
StatisticNumeric< T > * registerNumeric(const std::string &sName, const StatisticProperties &properties=StatisticProperties::NONE, const std::string &sDescription="")
 
void incrementDownstreamUnicastDataDiscardDueToRetries()
increment unicast data discard due to exhausted retries 
 
void incrementUpstreamUnicastDataDiscardDueToClobberRxHiddenBusy()
increment unicast data discard due to collision rx busy hidden 
 
void incrementUpstreamUnicastNoiseHiddenRx()
increment unicastcast data collision due to hidden rx 
 
void registerStatistics(StatisticRegistrar &statisticRegistrar)
 
void incrementUpstreamBroadcastDataDiscardDueToClobberRxHiddenBusy()
increment braodcast data discard due to collision rx busy hidden 
 
void incrementDownstreamUnicastDataDiscardDueToTxop()
increment unicast data discard due to txop expired 
 
void incrementUpstreamUnicastCtsRxFromPhy()
increment unicast cts recv from phy 
 
void incrementDownstreamBroadcastDataDiscardDueToTxop()
increment unicast data discard due to txop expired 
 
void incrementRxOneHopNbrListInvalidEventCount()
increment number rx one hop nbr list invalid events 
 
void incrementUpstreamBroadcastDataDiscardDueToClobberRxDuringTx()
increment braodcast data discard due to collision rx during tx 
 
void incrementUpstreamUnicastRtsCtsDataRxFromPhy()
increment unicast rts/ctsdata recv from phy