24 #ifndef WIFI_MAC_QUEUE_ITEM_H 25 #define WIFI_MAC_QUEUE_ITEM_H 27 #include "ns3/nstime.h" 34 class QosBlockedDestinations;
134 virtual void Print (std::ostream &os)
const;
Simulation virtual time values and global simulation resolution.
MsduAggregator::DeaggregatedMsdusCI begin(void)
Get a constant iterator pointing to the first MSDU in the list of aggregated MSDUs.
virtual void Print(std::ostream &os) const
Print the item contents.
uint32_t GetSize(void) const
Return the size of the packet stored by this item, including header size and trailer size...
Time GetTimeStamp(void) const
Get the timestamp included in this item.
Mac48Address GetDestinationAddress(void) const
Return the destination address present in the header.
MsduAggregator::DeaggregatedMsdusCI end(void)
Get a constant iterator indicating past-the-last MSDU in the list of aggregated MSDUs.
Ptr< const Packet > m_packet
The packet (MSDU or A-MSDU) contained in this queue item.
std::list< std::pair< Ptr< const Packet >, AmsduSubframeHeader > >::const_iterator DeaggregatedMsdusCI
DeaggregatedMsdusCI typedef.
WifiMacQueueItem stores (const) packets along with their Wifi MAC headers and the time when they were...
const WifiMacHeader & GetHeader(void) const
Get the header stored in this item.
Time m_tstamp
timestamp when the packet arrived at the queue
std::list< std::pair< Ptr< const Packet >, AmsduSubframeHeader > > DeaggregatedMsdus
DeaggregatedMsdus typedef.
MsduAggregator::DeaggregatedMsdus m_msduList
The list of aggregated MSDUs included in this MPDU.
WifiMacHeader m_header
Wifi MAC header associated with the packet.
void Aggregate(Ptr< const WifiMacQueueItem > msdu)
Aggregate the MSDU contained in the given MPDU to this MPDU (thus constituting an A-MSDU)...
virtual ~WifiMacQueueItem()
std::ostream & operator<<(std::ostream &os, const Angles &a)
print a struct Angles to output
Ptr< const Packet > GetPacket(void) const
Get the packet stored in this item.
Ptr< Packet > GetProtocolDataUnit(void) const
Get the MAC protocol data unit (MPDU) corresponding to this item (i.e.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
WifiMacQueueItem(Ptr< const Packet > p, const WifiMacHeader &header)
Create a Wifi MAC queue item containing a packet and a Wifi MAC header.
void DoAggregate(Ptr< const WifiMacQueueItem > msdu)
Aggregate the MSDU contained in the given MPDU to this MPDU (thus constituting an A-MSDU)...
A template-based reference counting class.