24 #include "ns3/packet.h"
27 #include "ns3/ht-capabilities.h"
28 #include "ns3/vht-capabilities.h"
29 #include "ns3/he-capabilities.h"
42 .SetGroupName (
"Wifi")
212 ForwardUp (mpdu->GetPacket ()->Copy (), from, to);
Wifi MAC high model for an ad-hoc Wifi MAC.
void Receive(Ptr< WifiMacQueueItem > mpdu) override
This method acts as the MacRxMiddle receive callback and is invoked to notify us that a frame has bee...
void SetAddress(Mac48Address address) override
void SetLinkUpCallback(Callback< void > linkUp) override
static TypeId GetTypeId(void)
Get the type ID.
bool CanForwardPacketsTo(Mac48Address to) const override
Return true if packets can be forwarded to the given destination, false otherwise.
void Enqueue(Ptr< Packet > packet, Mac48Address to) override
virtual void Queue(Ptr< Packet > packet, const WifiMacHeader &hdr)
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
base class for all MAC-level wifi objects.
bool GetVhtSupported() const
Return whether the device supports VHT.
bool GetQosSupported() const
Return whether the device supports QoS.
virtual void SetAddress(Mac48Address address)
HeCapabilities GetHeCapabilities(void) const
Return the HE capabilities of the device.
Mac48Address GetAddress(void) const
bool GetHtSupported() const
Return whether the device supports HT.
void SetTypeOfStation(TypeOfStation type)
This method is invoked by a subclass to specify what type of station it is implementing.
Ptr< WifiRemoteStationManager > GetWifiRemoteStationManager(void) const
Mac48Address GetBssid(void) const
bool GetHeSupported() const
Return whether the device supports HE.
virtual void Receive(Ptr< WifiMacQueueItem > mpdu)
This method acts as the MacRxMiddle receive callback and is invoked to notify us that a frame has bee...
virtual void DeaggregateAmsduAndForward(Ptr< WifiMacQueueItem > mpdu)
This method can be called to de-aggregate an A-MSDU and forward the constituent packets up the stack.
virtual void SetLinkUpCallback(Callback< void > linkUp)
void ForwardUp(Ptr< const Packet > packet, Mac48Address from, Mac48Address to)
Forward the packet up to the device.
VhtCapabilities GetVhtCapabilities(void) const
Return the VHT capabilities of the device.
HtCapabilities GetHtCapabilities(void) const
Return the HT capabilities of the device.
Ptr< QosTxop > GetQosTxop(AcIndex ac) const
Accessor for a specified EDCA object.
void SetBssid(Mac48Address bssid)
Ptr< Txop > GetTxop(void) const
Accessor for the Txop object.
void AddAllSupportedMcs(Mac48Address address)
Invoked in a STA or AP to store all of the MCS supported by a destination which is also supported loc...
void AddAllSupportedModes(Mac48Address address)
Invoked in a STA or AP to store all of the modes supported by a destination which is also supported l...
void AddStationVhtCapabilities(Mac48Address from, VhtCapabilities vhtCapabilities)
Records VHT capabilities of the remote station.
void AddStationHeCapabilities(Mac48Address from, HeCapabilities heCapabilities)
Records HE capabilities of the remote station.
void RecordDisassociated(Mac48Address address)
Records that the STA was disassociated.
void AddStationHtCapabilities(Mac48Address from, HtCapabilities htCapabilities)
Records HT capabilities of the remote station.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_DEBUG(msg)
Use NS_LOG to output a message of level LOG_DEBUG.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
uint8_t QosUtilsGetTidForPacket(Ptr< const Packet > packet)
If a QoS tag is attached to the packet, returns a value < 8.
Every class exported by the ns3 library is enclosed in the ns3 namespace.