21 #ifndef MPDU_AGGREGATOR_H 22 #define MPDU_AGGREGATOR_H 24 #include "ns3/object.h" 27 #include "ns3/nstime.h" 32 class AmpduSubframeHeader;
35 class WifiMacQueueItem;
Aggregator used to construct A-MPDUs.
Simulation virtual time values and global simulation resolution.
Smart pointer class similar to boost::intrusive_ptr.
This class mimics the TXVECTOR which is to be passed to the PHY in order to define the parameters whi...
static Time Min()
Minimum representable Time Not to be confused with Min(Time,Time).
static uint32_t GetSizeIfAggregated(uint32_t mpduSize, uint32_t ampduSize)
Compute the size of the A-MPDU resulting from the aggregation of an MPDU of size mpduSize and an A-MP...
virtual ~MpduAggregator()
static void Aggregate(Ptr< const WifiMacQueueItem > mpdu, Ptr< Packet > ampdu, bool isSingle)
Aggregate an MPDU to an A-MPDU.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
static uint8_t CalculatePadding(uint32_t ampduSize)
std::vector< Ptr< WifiMacQueueItem > > GetNextAmpdu(Ptr< const WifiMacQueueItem > mpdu, WifiTxVector txVector, Time ppduDurationLimit=Time::Min()) const
Attempt to aggregate other MPDUs to the given MPDU, while meeting the following constraints: ...
WifiModulationClass
This enumeration defines the modulation classes per (Table 9-4 "Modulation classes"; IEEE 802...
uint32_t GetMaxAmpduSize(Mac48Address recipient, uint8_t tid, WifiModulationClass modulation) const
Determine the maximum size for an A-MPDU of the given TID that can be sent to the given receiver when...
static TypeId GetTypeId(void)
Get the type ID.
std::map< AcIndex, Ptr< QosTxop > > EdcaQueues
EDCA queues typedef.
A base class which provides memory management and object aggregation.
EdcaQueues m_edca
the map of EDCA queues
static AmpduSubframeHeader GetAmpduSubframeHeader(uint16_t mpduSize, bool isSingle)
Get the A-MPDU subframe header corresponding to the MPDU size and whether the MPDU is a single MPDU...
a unique identifier for an interface.
void SetEdcaQueues(EdcaQueues edcaQueues)
Set the map of EDCA queues.