20 #ifndef REGULAR_WIFI_MAC_H
21 #define REGULAR_WIFI_MAC_H
23 #include "ns3/wifi-mac.h"
24 #include "ns3/spectrum-manager.h"
27 #include "edca-txop-n.h"
28 #include "wifi-remote-station-manager.h"
30 #include "qos-utils.h"
54 static TypeId GetTypeId (
void);
155 virtual bool SupportsSendFrom (
void)
const;
209 virtual void SetBasicBlockAckTimeout (
Time blockAckTimeout);
210 virtual Time GetBasicBlockAckTimeout (
void)
const;
211 virtual void SetCompressedBlockAckTimeout (
Time blockAckTimeout);
212 virtual Time GetCompressedBlockAckTimeout (
void)
const;
330 bool IsTxRadio (
void);
331 void SetTxRadio (
bool isTx);
332 bool IsRxRadio (
void);
364 double m_probMisdetect;
void SetQosSupported(bool enable)
APIs for Cognitive Radio extension.
virtual void SetWifiRemoteStationManager(Ptr< WifiRemoteStationManager > stationManager)
forward calls to a chain of CallbackAn ns3::TracedCallback has almost exactly the same API as a norma...
virtual void SetSsid(Ssid ssid)
void SetSlot(Time slotTime)
bool GetQosSupported() const
virtual void DeaggregateAmsduAndForward(Ptr< Packet > aggregatedPacket, const WifiMacHeader *hdr)
virtual void SetLinkDownCallback(Callback< void > linkDown)
virtual Ssid GetSsid(void) const
virtual void Enqueue(Ptr< const Packet > packet, Mac48Address to, Mac48Address from)
virtual void Receive(Ptr< Packet > packet, const WifiMacHeader *hdr)
virtual Ptr< WifiRemoteStationManager > GetWifiRemoteStationManager() const
virtual void SetBssid(Mac48Address bssid)
Ptr< EdcaTxopN > GetVOQueue(void) const
std::map< AcIndex, Ptr< EdcaTxopN > > EdcaQueues
Time GetCtsTimeout(void) const
virtual void SetForwardUpCallback(ForwardUpCallback upCallback)
base class for all MAC-level wifi objects.This class encapsulates all the low-level MAC functionality...
void SetEifsNoDifs(Time eifsNoDifs)
virtual void SetWifiPhy(Ptr< WifiPhy > phy)
void SetTypeOfStation(TypeOfStation type)
Ptr< EdcaTxopN > GetBEQueue(void) const
Ptr< DcaTxop > GetDcaTxop(void) const
base class for all MAC-level wifi objects.This class encapsulates all the low-level MAC functionality...
Time GetAckTimeout(void) const
Manage a set of ns3::DcfStateHandle a set of independent ns3::DcfState, each of which represents a si...
virtual void SetAddress(Mac48Address address)
virtual void SendAddBaResponse(const MgtAddBaRequestHeader *reqHdr, Mac48Address originator)
Ptr< EdcaTxopN > GetVIQueue(void) const
virtual void SetLinkUpCallback(Callback< void > linkUp)
void SetCtsTimeout(Time ctsTimeout)
virtual Ptr< WifiPhy > GetWifiPhy() const
virtual Mac48Address GetBssid(void) const
Ptr< EdcaTxopN > GetBKQueue(void) const
virtual Mac48Address GetAddress(void) const
virtual void DoInitialize()
Callback< void, Ptr< Packet >, Mac48Address, Mac48Address > ForwardUpCallback
virtual void SetPromisc(void)
Sets the interface in promiscuous mode.
a unique identifier for an interface.
void SetAckTimeout(Time ackTimeout)
virtual void FinishConfigureStandard(enum WifiPhyStandard standard)
Time GetEifsNoDifs(void) const
void SetupEdcaQueue(enum AcIndex ac)