A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::WifiMacQueueElem Struct Reference

Type of elements stored in a WifiMacQueue container. More...

#include "wifi-mac-queue-elem.h"

+ Collaboration diagram for ns3::WifiMacQueueElem:

Public Member Functions

 WifiMacQueueElem (Ptr< WifiMpdu > item)
 Constructor.
 
 ~WifiMacQueueElem ()
 

Public Attributes

AcIndex ac {AC_UNDEF}
 the Access Category associated with the queue storing this element (set by WifiMacQueue)
 
Callback< void, Ptr< WifiMpdu > > deleter
 reset the iterator stored by the MPDU
 
bool expired {false}
 whether this MPDU has been marked as expired
 
Time expiryTime {0}
 expiry time of the MPDU (set by WifiMacQueue)
 
std::map< uint8_t, Ptr< WifiMpdu > > inflights
 map of MPDUs in-flight on each link
 
Ptr< WifiMpdumpdu
 MPDU stored by this element.
 

Detailed Description

Type of elements stored in a WifiMacQueue container.

Such elements can be accessed by the WifiMacQueue (via iterators) and by the WifiMpdu itself (via the iterator it stores).

Data frames transmitted by an 11be MLD must include link addresses as (RA, TA) which are different than the MLD addresses seen by the upper layer. In order to keep the original version of the data frame, we create an alias when a data frame is sent over a link. Aliases are stored in the map of in-flight MPDUs, which is indexed by the ID of the link over which the alias is in-flight. For consistency, also data frame transmitted by non-MLDs have an alias, which is simply a pointer to the original version of the data frame.

Definition at line 39 of file wifi-mac-queue-elem.h.

Constructor & Destructor Documentation

◆ WifiMacQueueElem()

ns3::WifiMacQueueElem::WifiMacQueueElem ( Ptr< WifiMpdu > item)

Constructor.

Parameters
itemthe MPDU stored by this queue element

Definition at line 16 of file wifi-mac-queue-elem.cc.

◆ ~WifiMacQueueElem()

ns3::WifiMacQueueElem::~WifiMacQueueElem ( )

Definition at line 24 of file wifi-mac-queue-elem.cc.

References deleter, inflights, and mpdu.

Member Data Documentation

◆ ac

AcIndex ns3::WifiMacQueueElem::ac {AC_UNDEF}

the Access Category associated with the queue storing this element (set by WifiMacQueue)

Definition at line 43 of file wifi-mac-queue-elem.h.

◆ deleter

Callback<void, Ptr<WifiMpdu> > ns3::WifiMacQueueElem::deleter

reset the iterator stored by the MPDU

Definition at line 47 of file wifi-mac-queue-elem.h.

Referenced by ~WifiMacQueueElem().

◆ expired

bool ns3::WifiMacQueueElem::expired {false}

whether this MPDU has been marked as expired

Definition at line 45 of file wifi-mac-queue-elem.h.

◆ expiryTime

Time ns3::WifiMacQueueElem::expiryTime {0}

expiry time of the MPDU (set by WifiMacQueue)

Definition at line 42 of file wifi-mac-queue-elem.h.

◆ inflights

std::map<uint8_t, Ptr<WifiMpdu> > ns3::WifiMacQueueElem::inflights

map of MPDUs in-flight on each link

Definition at line 46 of file wifi-mac-queue-elem.h.

Referenced by ~WifiMacQueueElem().

◆ mpdu

Ptr<WifiMpdu> ns3::WifiMacQueueElem::mpdu

MPDU stored by this element.

Definition at line 41 of file wifi-mac-queue-elem.h.

Referenced by ~WifiMacQueueElem().


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