EMANE  1.2.1
EMANE::Models::TDMA::PacketStatusPublisherImpl Class Reference

Implementation of PacketStatusPublisher. More...

#include <packetstatuspublisherimpl.h>

Inheritance diagram for EMANE::Models::TDMA::PacketStatusPublisherImpl:
EMANE::Models::TDMA::PacketStatusPublisher

Public Types

enum  InboundAction {
  InboundAction::ACCEPT_GOOD, InboundAction::DROP_BAD_CONTROL, InboundAction::DROP_SLOT_NOT_RX, InboundAction::DROP_SLOT_MISSED_RX,
  InboundAction::DROP_MISS_FRAGMENT, InboundAction::DROP_SPECTRUM_SERVICE, InboundAction::DROP_SINR, InboundAction::DROP_REGISTRATION_ID,
  InboundAction::DROP_DESTINATION_MAC, InboundAction::DROP_TOO_LONG, InboundAction::DROP_FREQUENCY
}
 
enum  OutboundAction { OutboundAction::ACCEPT_GOOD, OutboundAction::DROP_TOO_BIG, OutboundAction::DROP_OVERFLOW, OutboundAction::DROP_FLOW_CONTROL }
 

Public Member Functions

 PacketStatusPublisherImpl ()
 
 ~PacketStatusPublisherImpl ()
 
void registerStatistics (StatisticRegistrar &registrar)
 
void inbound (NEMId src, const MessageComponent &component, InboundAction action) override
 
void inbound (NEMId src, const MessageComponents &components, InboundAction action) override
 
void inbound (NEMId src, NEMId dst, Priority priority, size_t size, InboundAction action) override
 
void outbound (NEMId src, NEMId dst, Priority priority, size_t size, OutboundAction action) override
 
void outbound (NEMId src, const MessageComponents &components, OutboundAction action) override
 

Detailed Description

Implementation of PacketStatusPublisher.

Definition at line 54 of file packetstatuspublisherimpl.h.

Member Enumeration Documentation

◆ InboundAction

Inbound packet (upstream) status codes

Enumerator
ACCEPT_GOOD 

Accepted and sent upstream

DROP_BAD_CONTROL 

Dropped bad control message

DROP_SLOT_NOT_RX 

Dropped received slot not rx slot

DROP_SLOT_MISSED_RX 

Dropped received late

DROP_MISS_FRAGMENT 

Dropped one or more fragments missing

DROP_SPECTRUM_SERVICE 

Dropped due to Spectrum service query error

DROP_SINR 

Dropped due to SINR

DROP_REGISTRATION_ID 

Dropped not for this radio model

DROP_DESTINATION_MAC 

Dropped not for this NEM

DROP_TOO_LONG 

Dropped packet propagation plus duration more than a slot

DROP_FREQUENCY 

Dropped packet frequency wrong for slot

Definition at line 62 of file packetstatuspublisher.h.

◆ OutboundAction

OUtbound packet (downstream> status codes

Enumerator
ACCEPT_GOOD 

Accepted and sent downstream

DROP_TOO_BIG 

Dropped too big and fragmentation disabled

DROP_OVERFLOW 

Dropped queue overflow

DROP_FLOW_CONTROL 

Dropped flow control error

Definition at line 80 of file packetstatuspublisher.h.

Constructor & Destructor Documentation

◆ PacketStatusPublisherImpl()

EMANE::Models::TDMA::PacketStatusPublisherImpl::PacketStatusPublisherImpl ( )

Definition at line 87 of file packetstatuspublisherimpl.cc.

◆ ~PacketStatusPublisherImpl()

EMANE::Models::TDMA::PacketStatusPublisherImpl::~PacketStatusPublisherImpl ( )

Definition at line 89 of file packetstatuspublisherimpl.cc.

Member Function Documentation

◆ inbound() [1/3]

void EMANE::Models::TDMA::PacketStatusPublisherImpl::inbound ( NEMId  src,
const MessageComponent component,
InboundAction  action 
)
overridevirtual

Records status of inbound message components

Parameters
srcNEM message source
componentMessageComponent entry
actionAction status code

Implements EMANE::Models::TDMA::PacketStatusPublisher.

Definition at line 141 of file packetstatuspublisherimpl.cc.

◆ inbound() [2/3]

void EMANE::Models::TDMA::PacketStatusPublisherImpl::inbound ( NEMId  src,
const MessageComponents components,
InboundAction  action 
)
overridevirtual

Records status of inbound message components

Parameters
srcNEM message source
componentsMessageComponent entries
actionAction status code

Implements EMANE::Models::TDMA::PacketStatusPublisher.

Definition at line 152 of file packetstatuspublisherimpl.cc.

◆ inbound() [3/3]

void EMANE::Models::TDMA::PacketStatusPublisherImpl::inbound ( NEMId  src,
NEMId  dst,
Priority  priority,
size_t  size,
InboundAction  action 
)
overridevirtual

Records status of inbound message components

Parameters
srcNEM message source
dstNEM message destination
priorityMessage priority
sizeMessage size in bytes
actionAction status code

Implements EMANE::Models::TDMA::PacketStatusPublisher.

Definition at line 168 of file packetstatuspublisherimpl.cc.

◆ outbound() [1/2]

void EMANE::Models::TDMA::PacketStatusPublisherImpl::outbound ( NEMId  src,
NEMId  dst,
Priority  priority,
size_t  size,
OutboundAction  action 
)
overridevirtual

Records status of outbound message components

Parameters
srcNEM message source
dstNEM message destination
priorityMessage priority
sizeMessage size in bytes
actionAction status code

Implements EMANE::Models::TDMA::PacketStatusPublisher.

Definition at line 376 of file packetstatuspublisherimpl.cc.

◆ outbound() [2/2]

void EMANE::Models::TDMA::PacketStatusPublisherImpl::outbound ( NEMId  src,
const MessageComponents components,
OutboundAction  action 
)
overridevirtual

Records status of outbound message components

Parameters
srcNEM message source
componentsMessageComponent entries
actionAction status code

Implements EMANE::Models::TDMA::PacketStatusPublisher.

Definition at line 511 of file packetstatuspublisherimpl.cc.

◆ registerStatistics()

void EMANE::Models::TDMA::PacketStatusPublisherImpl::registerStatistics ( StatisticRegistrar registrar)

Definition at line 91 of file packetstatuspublisherimpl.cc.


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