A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::WifiPhy Class Referenceabstract

802.11 PHY layer model More...

#include <wifi-phy.h>

+ Inheritance diagram for ns3::WifiPhy:
+ Collaboration diagram for ns3::WifiPhy:

Public Types

typedef Callback< void, Ptr
< const Packet >, double > 
RxErrorCallback
 arg1: packet received unsuccessfully arg2: snr of packet More...
 
typedef Callback< void, Ptr
< Packet >, double, WifiMode,
enum WifiPreamble
RxOkCallback
 arg1: packet received successfully arg2: snr of packet arg3: mode of packet arg4: type of preamble used for packet. More...
 
enum  State {
  IDLE, CCA_BUSY, TX, RX,
  SWITCHING
}
 The state of the PHY layer. More...
 

Public Member Functions

 WifiPhy ()
 
virtual ~WifiPhy ()
 
virtual int64_t AssignStreams (int64_t stream)=0
 Assign a fixed random variable stream number to the random variables used by this model. More...
 
virtual double CalculateSnr (WifiMode txMode, double ber) const =0
 
virtual void ConfigureStandard (enum WifiPhyStandard standard)=0
 Configure the PHY-level parameters for different Wi-Fi standard. More...
 
virtual uint32_t GetBssMembershipSelector (uint32_t selector) const =0
 The WifiPhy::BssMembershipSelector() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More...
 
virtual Ptr< WifiChannelGetChannel (void) const =0
 Return the WifiChannel this WifiPhy is connected to. More...
 
virtual bool GetChannelBonding (void) const =0
 
virtual uint16_t GetChannelNumber () const =0
 Return current channel number. More...
 
virtual Time GetDelayUntilIdle (void)=0
 
virtual uint32_t GetFrequency (void) const =0
 
virtual bool GetGreenfield (void) const =0
 
virtual bool GetGuardInterval (void) const =0
 
virtual Time GetLastRxStartTime (void) const =0
 Return the start time of the last received packet. More...
 
virtual bool GetLdpc (void) const =0
 
virtual uint8_t GetMcs (uint8_t mcs) const =0
 The WifiPhy::GetMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of Mcs indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet. More...
 
virtual WifiModeList GetMembershipSelectorModes (uint32_t selector)=0
 The WifiPhy::GetMembershipSelectorModes() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More...
 
virtual WifiMode GetMode (uint32_t mode) const =0
 The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet. More...
 
virtual uint32_t GetNBssMembershipSelectors (void) const =0
 The WifiPhy::NBssMembershipSelectors() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet. More...
 
virtual uint8_t GetNMcs (void) const =0
 The WifiPhy::GetNMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of Mcs indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet. More...
 
virtual uint32_t GetNModes (void) const =0
 The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet. More...
 
virtual uint32_t GetNTxPower (void) const =0
 
virtual uint32_t GetNumberOfReceiveAntennas (void) const =0
 
virtual uint32_t GetNumberOfTransmitAntennas (void) const =0
 
virtual Time GetStateDuration (void)=0
 
virtual bool GetStbc (void) const =0
 
virtual double GetTxPowerEnd (void) const =0
 Return the maximum available transmission power level (dBm). More...
 
virtual double GetTxPowerStart (void) const =0
 Return the minimum available transmission power level (dBm). More...
 
virtual bool IsStateBusy (void)=0
 
virtual bool IsStateCcaBusy (void)=0
 
virtual bool IsStateIdle (void)=0
 
virtual bool IsStateRx (void)=0
 
virtual bool IsStateSwitching (void)=0
 
virtual bool IsStateTx (void)=0
 
virtual WifiMode McsToWifiMode (uint8_t mcs)=0
 For a given MCS finds the corresponding WifiMode and returns it as defined in the IEEE 802.11n standard. More...
 
void NotifyMonitorSniffRx (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, bool isShortPreamble, double signalDbm, double noiseDbm)
 Public method used to fire a MonitorSniffer trace for a wifi packet being received. More...
 
void NotifyMonitorSniffTx (Ptr< const Packet > packet, uint16_t channelFreqMhz, uint16_t channelNumber, uint32_t rate, bool isShortPreamble, uint8_t txPower)
 Public method used to fire a MonitorSniffer trace for a wifi packet being transmitted. More...
 
void NotifyRxBegin (Ptr< const Packet > packet)
 Public method used to fire a PhyRxBegin trace. More...
 
void NotifyRxDrop (Ptr< const Packet > packet)
 Public method used to fire a PhyRxDrop trace. More...
 
void NotifyRxEnd (Ptr< const Packet > packet)
 Public method used to fire a PhyRxEnd trace. More...
 
void NotifyTxBegin (Ptr< const Packet > packet)
 Public method used to fire a PhyTxBegin trace. More...
 
void NotifyTxDrop (Ptr< const Packet > packet)
 Public method used to fire a PhyTxDrop trace. More...
 
void NotifyTxEnd (Ptr< const Packet > packet)
 Public method used to fire a PhyTxEnd trace. More...
 
virtual void RegisterListener (WifiPhyListener *listener)=0
 
virtual void SendPacket (Ptr< const Packet > packet, WifiMode mode, enum WifiPreamble preamble, WifiTxVector txvector)=0
 
virtual void SetChannelBonding (bool channelbonding)=0
 
virtual void SetChannelNumber (uint16_t id)=0
 Set channel number. More...
 
virtual void SetFrequency (uint32_t freq)=0
 
virtual void SetGreenfield (bool greenfield)=0
 
virtual void SetGuardInterval (bool guardInterval)=0
 
virtual void SetLdpc (bool ldpc)=0
 
virtual void SetNumberOfReceiveAntennas (uint32_t rx)=0
 
virtual void SetNumberOfTransmitAntennas (uint32_t tx)=0
 
virtual void SetReceiveErrorCallback (RxErrorCallback callback)=0
 
virtual void SetReceiveOkCallback (RxOkCallback callback)=0
 
virtual void SetStbc (bool stbc)=0
 
virtual uint32_t WifiModeToMcs (WifiMode mode)=0
 For a given WifiMode finds the corresponding MCS value and returns it as defined in the IEEE 802.11n standard. More...
 
- Public Member Functions inherited from ns3::Object
 Object ()
 
virtual ~Object ()
 
void AggregateObject (Ptr< Object > other)
 
void Dispose (void)
 Run the DoDispose methods of this object and all the objects aggregated to it. More...
 
AggregateIterator GetAggregateIterator (void) const
 
virtual TypeId GetInstanceTypeId (void) const
 
template<typename T >
Ptr< T > GetObject (void) const
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 
void Initialize (void)
 This method calls the virtual DoInitialize method on all the objects aggregated to this object. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
 
void SetAttribute (std::string name, const AttributeValue &value)
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 

Static Public Member Functions

static Time CalculateTxDuration (uint32_t size, WifiTxVector txvector, enum WifiPreamble preamble)
 
static WifiMode GetDsssRate11Mbps ()
 Return a WifiMode for DSSS at 11Mbps. More...
 
static WifiMode GetDsssRate1Mbps ()
 Return a WifiMode for DSSS at 1Mbps. More...
 
static WifiMode GetDsssRate2Mbps ()
 Return a WifiMode for DSSS at 2Mbps. More...
 
static WifiMode GetDsssRate5_5Mbps ()
 Return a WifiMode for DSSS at 5.5Mbps. More...
 
static WifiMode GetErpOfdmRate12Mbps ()
 Return a WifiMode for ERP-ODFM at 12Mbps. More...
 
static WifiMode GetErpOfdmRate18Mbps ()
 Return a WifiMode for ERP-ODFM at 18Mbps. More...
 
static WifiMode GetErpOfdmRate24Mbps ()
 Return a WifiMode for ERP-ODFM at 24Mbps. More...
 
static WifiMode GetErpOfdmRate36Mbps ()
 Return a WifiMode for ERP-ODFM at 36Mbps. More...
 
static WifiMode GetErpOfdmRate48Mbps ()
 Return a WifiMode for ERP-ODFM at 48Mbps. More...
 
static WifiMode GetErpOfdmRate54Mbps ()
 Return a WifiMode for ERP-ODFM at 54Mbps. More...
 
static WifiMode GetErpOfdmRate6Mbps ()
 Return a WifiMode for ERP-ODFM at 6Mbps. More...
 
static WifiMode GetErpOfdmRate9Mbps ()
 Return a WifiMode for ERP-ODFM at 9Mbps. More...
 
static WifiMode GetMFPlcpHeaderMode (WifiMode payloadMode, WifiPreamble preamble)
 
static WifiMode GetOfdmRate108MbpsBW40MHz ()
 Return a WifiMode for ODFM at 108Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate120MbpsBW40MHz ()
 Return a WifiMode for ODFM at 120Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate121_5MbpsBW40MHz ()
 Return a WifiMode for ODFM at 121.5Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate12Mbps ()
 Return a WifiMode for ODFM at 12Mbps. More...
 
static WifiMode GetOfdmRate12MbpsBW10MHz ()
 Return a WifiMode for ODFM at 12Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate12MbpsBW5MHz ()
 Return a WifiMode for ODFM at 12Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate135MbpsBW40MHz ()
 Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate135MbpsBW40MHzShGi ()
 Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate13_5MbpsBW40MHz ()
 Return a WifiMode for ODFM at 13.5Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate13_5MbpsBW5MHz ()
 Return a WifiMode for ODFM at 13.5Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate13MbpsBW20MHz ()
 Return a WifiMode for ODFM at 13Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate14_4MbpsBW20MHz ()
 Return a WifiMode for ODFM at 14.4Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate150MbpsBW40MHz ()
 Return a WifiMode for ODFM at 150Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate15MbpsBW40MHz ()
 Return a WifiMode for ODFM at 15Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate18Mbps ()
 Return a WifiMode for ODFM at 18Mbps. More...
 
static WifiMode GetOfdmRate18MbpsBW10MHz ()
 Return a WifiMode for ODFM at 18Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate19_5MbpsBW20MHz ()
 Return a WifiMode for ODFM at 19.5Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate1_5MbpsBW5MHz ()
 Return a WifiMode for ODFM at 1.5Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate21_7MbpsBW20MHz ()
 Return a WifiMode for ODFM at 21.7Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate24Mbps ()
 Return a WifiMode for ODFM at 24Mbps. More...
 
static WifiMode GetOfdmRate24MbpsBW10MHz ()
 Return a WifiMode for ODFM at 24Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate26MbpsBW20MHz ()
 Return a WifiMode for ODFM at 26Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate27MbpsBW10MHz ()
 Return a WifiMode for ODFM at 27Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate27MbpsBW40MHz ()
 Return a WifiMode for ODFM at 27Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate28_9MbpsBW20MHz ()
 Return a WifiMode for ODFM at 28.9Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate2_25MbpsBW5MHz ()
 Return a WifiMode for ODFM at 2.25Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate30MbpsBW40MHz ()
 Return a WifiMode for ODFM at 30Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate36Mbps ()
 Return a WifiMode for ODFM at 36Mbps. More...
 
static WifiMode GetOfdmRate39MbpsBW20MHz ()
 Return a WifiMode for ODFM at 39Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate3MbpsBW10MHz ()
 Return a WifiMode for ODFM at 3Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate3MbpsBW5MHz ()
 Return a WifiMode for ODFM at 3Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate40_5MbpsBW40MHz ()
 Return a WifiMode for ODFM at 40.5Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate43_3MbpsBW20MHz ()
 Return a WifiMode for ODFM at 43.3Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate45MbpsBW40MHz ()
 Return a WifiMode for ODFM at 45Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate48Mbps ()
 Return a WifiMode for ODFM at 48Mbps. More...
 
static WifiMode GetOfdmRate4_5MbpsBW10MHz ()
 Return a WifiMode for ODFM at 4.5Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate4_5MbpsBW5MHz ()
 Return a WifiMode for ODFM at 4.5Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate52MbpsBW20MHz ()
 Return a WifiMode for ODFM at 52Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate54Mbps ()
 Return a WifiMode for ODFM at 54Mbps. More...
 
static WifiMode GetOfdmRate54MbpsBW40MHz ()
 Return a WifiMode for ODFM at 54Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate57_8MbpsBW20MHz ()
 Return a WifiMode for ODFM at 57.8Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate58_5MbpsBW20MHz ()
 Return a WifiMode for ODFM at 58.5Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate60MbpsBW40MHz ()
 Return a WifiMode for ODFM at 60Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate65MbpsBW20MHz ()
 Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate65MbpsBW20MHzShGi ()
 Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate6_5MbpsBW20MHz ()
 Return a WifiMode for ODFM at 6.5Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate6Mbps ()
 Return a WifiMode for ODFM at 6Mbps. More...
 
static WifiMode GetOfdmRate6MbpsBW10MHz ()
 Return a WifiMode for ODFM at 6Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate6MbpsBW5MHz ()
 Return a WifiMode for ODFM at 6Mbps with 5MHz channel spacing. More...
 
static WifiMode GetOfdmRate72_2MbpsBW20MHz ()
 Return a WifiMode for ODFM at 72.2Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate7_2MbpsBW20MHz ()
 Return a WifiMode for ODFM at 7.2Mbps with 20MHz channel spacing. More...
 
static WifiMode GetOfdmRate81MbpsBW40MHz ()
 Return a WifiMode for ODFM at 81Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate90MbpsBW40MHz ()
 Return a WifiMode for ODFM at 90Mbps with 40MHz channel spacing. More...
 
static WifiMode GetOfdmRate9Mbps ()
 Return a WifiMode for ODFM at 9Mbps. More...
 
static WifiMode GetOfdmRate9MbpsBW10MHz ()
 Return a WifiMode for ODFM at 9Mbps with 10MHz channel spacing. More...
 
static WifiMode GetOfdmRate9MbpsBW5MHz ()
 Return a WifiMode for ODFM at 9Mbps with 5MHz channel spacing. More...
 
static double GetPayloadDurationMicroSeconds (uint32_t size, WifiTxVector txvector)
 
static uint32_t GetPlcpHeaderDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble)
 
static WifiMode GetPlcpHeaderMode (WifiMode payloadMode, WifiPreamble preamble)
 
static uint32_t GetPlcpHtSigHeaderDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble)
 
static uint32_t GetPlcpHtTrainingSymbolDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble, WifiTxVector txvector)
 
static uint32_t GetPlcpPreambleDurationMicroSeconds (WifiMode payloadMode, WifiPreamble preamble)
 
static TypeId GetTypeId (void)
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId (void)
 Register this type. More...
 
- Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
static void Cleanup (void)
 Noop. More...
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

TracedCallback< Ptr< const
Packet >, uint16_t, uint16_t,
uint32_t, bool, double, double > 
m_phyMonitorSniffRxTrace
 A trace source that emulates a wifi device in monitor mode sniffing a packet being received. More...
 
TracedCallback< Ptr< const
Packet >, uint16_t, uint16_t,
uint32_t, bool, uint8_t > 
m_phyMonitorSniffTxTrace
 A trace source that emulates a wifi device in monitor mode sniffing a packet being transmitted. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyRxBeginTrace
 The trace source fired when a packet begins the reception process from the medium. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyRxDropTrace
 The trace source fired when the phy layer drops a packet it has received. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyRxEndTrace
 The trace source fired when a packet ends the reception process from the medium. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyTxBeginTrace
 The trace source fired when a packet begins the transmission process on the medium. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyTxDropTrace
 The trace source fired when the phy layer drops a packet as it tries to transmit it. More...
 
TracedCallback< Ptr< const
Packet > > 
m_phyTxEndTrace
 The trace source fired when a packet ends the transmission process on the medium. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 
virtual void DoDispose (void)
 This method is called by Object::Dispose or by the object's destructor, whichever comes first. More...
 
virtual void DoInitialize (void)
 This method is called only once by Object::Initialize. More...
 
virtual void NotifyNewAggregate (void)
 This method is invoked whenever two sets of objects are aggregated together. More...
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 
virtual void NotifyConstructionCompleted (void)
 This method is invoked once all member attributes have been initialized. More...
 

Detailed Description

802.11 PHY layer model

Config Paths

ns3::WifiPhy is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/Phy

No Attributes are defined for this type.

TraceSources

  • PhyTxBegin: Trace source indicating a packet has begun transmitting over the channel medium
  • PhyTxEnd: Trace source indicating a packet has been completely transmitted over the channel. NOTE: the only official WifiPhy implementation available to this date (YansWifiPhy) never fires this trace source.
  • PhyTxDrop: Trace source indicating a packet has been dropped by the device during transmission
  • PhyRxBegin: Trace source indicating a packet has begun being received from the channel medium by the device
  • PhyRxEnd: Trace source indicating a packet has been completely received from the channel medium by the device
  • PhyRxDrop: Trace source indicating a packet has been dropped by the device during reception
  • MonitorSnifferRx: Trace source simulating a wifi device in monitor mode sniffing all received frames
  • MonitorSnifferTx: Trace source simulating the capability of a wifi device in monitor mode to sniff all frames being transmitted

Definition at line 117 of file wifi-phy.h.

Member Typedef Documentation

typedef Callback<void,Ptr<const Packet>, double> ns3::WifiPhy::RxErrorCallback

arg1: packet received unsuccessfully arg2: snr of packet

Definition at line 158 of file wifi-phy.h.

arg1: packet received successfully arg2: snr of packet arg3: mode of packet arg4: type of preamble used for packet.

Definition at line 153 of file wifi-phy.h.

Member Enumeration Documentation

The state of the PHY layer.

Enumerator
IDLE 

The PHY layer is IDLE.

CCA_BUSY 

The PHY layer has sense the medium busy through the CCA mechanism.

TX 

The PHY layer is sending a packet.

RX 

The PHY layer is receiving a packet.

SWITCHING 

The PHY layer is switching to other channel.

Definition at line 123 of file wifi-phy.h.

Constructor & Destructor Documentation

ns3::WifiPhy::WifiPhy ( )

Definition at line 87 of file wifi-phy.cc.

References NS_LOG_FUNCTION.

ns3::WifiPhy::~WifiPhy ( )
virtual

Definition at line 92 of file wifi-phy.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

virtual int64_t ns3::WifiPhy::AssignStreams ( int64_t  stream)
pure virtual

Assign a fixed random variable stream number to the random variables used by this model.

Return the number of streams (possibly zero) that have been assigned.

Parameters
streamfirst stream index to use
Returns
the number of stream indices assigned by this model

Implemented in ns3::YansWifiPhy.

virtual double ns3::WifiPhy::CalculateSnr ( WifiMode  txMode,
double  ber 
) const
pure virtual
Parameters
txModethe transmission mode
berthe probability of bit error rate
Returns
the minimum snr which is required to achieve the requested ber for the specified transmission mode. (W/W)

Implemented in ns3::YansWifiPhy.

Referenced by ns3::IdealWifiManager::SetupPhy().

+ Here is the caller graph for this function:

Time ns3::WifiPhy::CalculateTxDuration ( uint32_t  size,
WifiTxVector  txvector,
enum WifiPreamble  preamble 
)
static
virtual void ns3::WifiPhy::ConfigureStandard ( enum WifiPhyStandard  standard)
pure virtual

Configure the PHY-level parameters for different Wi-Fi standard.

Parameters
standardthe Wi-Fi standard

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MeshHelper::CreateInterface(), and ns3::WifiHelper::Install().

+ Here is the caller graph for this function:

virtual uint32_t ns3::WifiPhy::GetBssMembershipSelector ( uint32_t  selector) const
pure virtual

The WifiPhy::BssMembershipSelector() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.

This was introduced with 11n

Parameters
selectorindex in array of supported memeberships
Returns
the memebership selector whose index is specified.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().

+ Here is the caller graph for this function:

virtual Ptr<WifiChannel> ns3::WifiPhy::GetChannel ( void  ) const
pure virtual

Return the WifiChannel this WifiPhy is connected to.

Returns
the WifiChannel this WifiPhy is connected to

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiNetDevice::DoGetChannel(), and ns3::WifiNetDevice::GetChannel().

+ Here is the caller graph for this function:

virtual bool ns3::WifiPhy::GetChannelBonding ( void  ) const
pure virtual
Returns
true if channel bonding 40 MHz is supported, false otherwise

Implemented in ns3::YansWifiPhy.

virtual uint16_t ns3::WifiPhy::GetChannelNumber ( ) const
pure virtual

Return current channel number.

Returns
the current channel number

Implemented in ns3::YansWifiPhy.

virtual Time ns3::WifiPhy::GetDelayUntilIdle ( void  )
pure virtual
Returns
the predicted delay until this PHY can become WifiPhy::IDLE.

The PHY will never become WifiPhy::IDLE before the delay returned by this method but it could become really idle later.

Implemented in ns3::YansWifiPhy.

WifiMode ns3::WifiPhy::GetDsssRate11Mbps ( )
static

Return a WifiMode for DSSS at 11Mbps.

Returns
a WifiMode for DSSS at 11Mbps

Definition at line 547 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.

Referenced by ns3::YansWifiPhy::Configure80211b(), ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::TxDurationTest::DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetDsssRate1Mbps ( )
static

Return a WifiMode for DSSS at 1Mbps.

Returns
a WifiMode for DSSS at 1Mbps

Definition at line 505 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.

Referenced by ns3::YansWifiPhy::Configure80211b(), ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::TxDurationTest::DoRun(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetDsssRate2Mbps ( )
static

Return a WifiMode for DSSS at 2Mbps.

Returns
a WifiMode for DSSS at 2Mbps

Definition at line 518 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.

Referenced by ns3::YansWifiPhy::Configure80211b(), ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::TxDurationTest::DoRun(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetDsssRate5_5Mbps ( )
static

Return a WifiMode for DSSS at 5.5Mbps.

Returns
a WifiMode for DSSS at 5.5Mbps

Definition at line 534 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_UNDEFINED, and ns3::WIFI_MOD_CLASS_DSSS.

Referenced by ns3::YansWifiPhy::Configure80211b(), ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::TxDurationTest::DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate12Mbps ( )
static

Return a WifiMode for ERP-ODFM at 12Mbps.

Returns
a WifiMode for ERP-OFDM at 12Mbps

Definition at line 589 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate18Mbps ( )
static

Return a WifiMode for ERP-ODFM at 18Mbps.

Returns
a WifiMode for ERP-OFDM at 18Mbps

Definition at line 602 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate24Mbps ( )
static

Return a WifiMode for ERP-ODFM at 24Mbps.

Returns
a WifiMode for ERP-OFDM at 24Mbps

Definition at line 615 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate36Mbps ( )
static

Return a WifiMode for ERP-ODFM at 36Mbps.

Returns
a WifiMode for ERP-OFDM at 36Mbps

Definition at line 628 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate48Mbps ( )
static

Return a WifiMode for ERP-ODFM at 48Mbps.

Returns
a WifiMode for ERP-OFDM at 48Mbps

Definition at line 641 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate54Mbps ( )
static

Return a WifiMode for ERP-ODFM at 54Mbps.

Returns
a WifiMode for ERP-OFDM at 54Mbps

Definition at line 654 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::TxDurationTest::DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate6Mbps ( )
static

Return a WifiMode for ERP-ODFM at 6Mbps.

Returns
a WifiMode for ERP-OFDM at 6Mbps

Definition at line 563 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), ns3::YansWifiPhy::Configure80211n(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetErpOfdmRate9Mbps ( )
static

Return a WifiMode for ERP-ODFM at 9Mbps.

Returns
a WifiMode for ERP-OFDM at 9Mbps

Definition at line 576 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_ERP_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211g(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual uint32_t ns3::WifiPhy::GetFrequency ( void  ) const
pure virtual
Returns
the operating frequency on this node

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::GetGreenfield ( void  ) const
pure virtual
virtual Time ns3::WifiPhy::GetLastRxStartTime ( void  ) const
pure virtual

Return the start time of the last received packet.

Returns
the start time of the last received packet

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::NavCounterResetCtsMissed().

+ Here is the caller graph for this function:

virtual bool ns3::WifiPhy::GetLdpc ( void  ) const
pure virtual
Returns
true if LDPC is supported, false otherwise

Implemented in ns3::YansWifiPhy.

Referenced by ns3::StaWifiMac::GetHtCapabilities(), and ns3::ApWifiMac::GetHtCapabilities().

+ Here is the caller graph for this function:

virtual uint8_t ns3::WifiPhy::GetMcs ( uint8_t  mcs) const
pure virtual

The WifiPhy::GetMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of Mcs indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet.

This was introduced with 11n

Parameters
mcsindex in array of supported Mcs
Returns
the Mcs index whose index is specified.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::StaWifiMac::GetHtCapabilities(), ns3::ApWifiMac::GetHtCapabilities(), ns3::ApWifiMac::Receive(), ns3::StaWifiMac::Receive(), and ns3::WifiRemoteStationManager::SetupPhy().

+ Here is the caller graph for this function:

virtual WifiModeList ns3::WifiPhy::GetMembershipSelectorModes ( uint32_t  selector)
pure virtual

The WifiPhy::GetMembershipSelectorModes() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.

This was introduced with 11n

Parameters
selectorindex in array of supported memeberships
Returns
a WifiModeList that contains the WifiModes associrated with the selected index.
See also
WifiPhy::GetMembershipSelectorModes()

Implemented in ns3::YansWifiPhy.

WifiMode ns3::WifiPhy::GetMFPlcpHeaderMode ( WifiMode  payloadMode,
WifiPreamble  preamble 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
Returns
the WifiMode used for the transmission of the HT-SIG in Mixed Format and greenfield format PLCP header

Definition at line 101 of file wifi-phy.cc.

References ns3::WifiMode::GetBandwidth(), GetOfdmRate13_5MbpsBW40MHz(), and GetOfdmRate6_5MbpsBW20MHz().

Referenced by ns3::InterferenceHelper::CalculatePer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual WifiMode ns3::WifiPhy::GetMode ( uint32_t  mode) const
pure virtual

The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet.

It is important to note that the DeviceRateSet is a superset (not necessarily proper) of the OperationalRateSet (which is logically, if not actually, a property of the associated WifiRemoteStationManager), which itself is a superset (again, not necessarily proper) of the BSSBasicRateSet.

Parameters
modeindex in array of supported modes
Returns
the mode whose index is specified.
See also
WifiPhy::GetNModes()

Implemented in ns3::YansWifiPhy.

Referenced by ns3::AdhocWifiMac::Enqueue(), ns3::OcbWifiMac::Enqueue(), ns3::MeshWifiInterfaceMac::ForwardDown(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), ns3::ApWifiMac::Receive(), ns3::StaWifiMac::Receive(), ns3::MeshWifiInterfaceMac::Receive(), ns3::IdealWifiManager::SetupPhy(), ns3::MinstrelWifiManager::SetupPhy(), and ns3::WifiRemoteStationManager::SetupPhy().

+ Here is the caller graph for this function:

virtual uint32_t ns3::WifiPhy::GetNBssMembershipSelectors ( void  ) const
pure virtual

The WifiPhy::NBssMembershipSelectors() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the BssMemebershipSelectorSet, and which is stored as WifiPhy::m_bssMembershipSelectorSet.

This was introduced with 11n

Returns
the memebership selector whose index is specified.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().

+ Here is the caller graph for this function:

virtual uint8_t ns3::WifiPhy::GetNMcs ( void  ) const
pure virtual

The WifiPhy::GetNMcs() method is used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception MCS indexes that this WifiPhy(-derived class) can support - a set of Mcs indexes which we call the DeviceMcsSet, and which is stored as WifiPhy::m_deviceMcsSet.

This was introduced with 11n

Returns
the Mcs index whose index is specified.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::StaWifiMac::GetHtCapabilities(), ns3::ApWifiMac::GetHtCapabilities(), ns3::ApWifiMac::Receive(), and ns3::StaWifiMac::Receive().

+ Here is the caller graph for this function:

virtual uint32_t ns3::WifiPhy::GetNModes ( void  ) const
pure virtual

The WifiPhy::GetNModes() and WifiPhy::GetMode() methods are used (e.g., by a WifiRemoteStationManager) to determine the set of transmission/reception modes that this WifiPhy(-derived class) can support - a set of WifiMode objects which we call the DeviceRateSet, and which is stored as WifiPhy::m_deviceRateSet.

It is important to note that the DeviceRateSet is a superset (not necessarily proper) of the OperationalRateSet (which is logically, if not actually, a property of the associated WifiRemoteStationManager), which itself is a superset (again, not necessarily proper) of the BSSBasicRateSet.

Returns
the number of transmission modes supported by this PHY.
See also
WifiPhy::GetMode()

Implemented in ns3::YansWifiPhy.

Referenced by ns3::AdhocWifiMac::Enqueue(), ns3::OcbWifiMac::Enqueue(), ns3::MeshWifiInterfaceMac::ForwardDown(), ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::MeshWifiInterfaceMac::GetSupportedRates(), ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), ns3::ApWifiMac::Receive(), ns3::StaWifiMac::Receive(), ns3::MeshWifiInterfaceMac::Receive(), ns3::IdealWifiManager::SetupPhy(), and ns3::MinstrelWifiManager::SetupPhy().

+ Here is the caller graph for this function:

virtual uint32_t ns3::WifiPhy::GetNTxPower ( void  ) const
pure virtual
Returns
the number of tx power levels available for this PHY.

Implemented in ns3::YansWifiPhy.

virtual uint32_t ns3::WifiPhy::GetNumberOfReceiveAntennas ( void  ) const
pure virtual
Returns
the number of recievers on this node.

Implemented in ns3::YansWifiPhy.

virtual uint32_t ns3::WifiPhy::GetNumberOfTransmitAntennas ( void  ) const
pure virtual
Returns
the number of transmit antenna on this device

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::GetNumberOfTransmitAntennas().

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate108MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 108Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 108Mbps with 40MHz channel spacing

Definition at line 1323 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate120MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 120Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 120Mbps with 40MHz channel spacing

Definition at line 1335 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate121_5MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 121.5Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 121.5Mbps with 40MHz channel spacing

Definition at line 1347 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate12Mbps ( )
static

Return a WifiMode for ODFM at 12Mbps.

Returns
a WifiMode for OFDM at 12Mbps

Definition at line 696 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate12MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 12Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 12Mbps with 10MHz channel spacing

Definition at line 828 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate12MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 12Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 12Mbps with 5MHz channel spacing

Definition at line 960 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate135MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 135Mbps with 40MHz channel spacing

Definition at line 1371 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_5_6, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate135MbpsBW40MHzShGi ( )
static

Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing.

The rate supports short guard interval.

Returns
a WifiMode for OFDM at 135Mbps with 40MHz channel spacing

Definition at line 1359 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate13_5MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 13.5Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 13.5Mbps with 40MHz channel spacing

Definition at line 1196 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), GetMFPlcpHeaderMode(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate13_5MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 13.5Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 13.5Mbps with 5MHz channel spacing

Definition at line 973 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate13MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 13Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 13Mbps with 20MHz channel spacing

Definition at line 1013 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), GetPlcpHeaderMode(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate14_4MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 14.4Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 14.4Mbps with 20MHz channel spacing

Definition at line 1026 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate150MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 150Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 150Mbps with 40MHz channel spacing

Definition at line 1384 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_5_6, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate15MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 15Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 15Mbps with 40MHz channel spacing

Definition at line 1209 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate18Mbps ( )
static

Return a WifiMode for ODFM at 18Mbps.

Returns
a WifiMode for OFDM at 18Mbps

Definition at line 709 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate18MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 18Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 18Mbps with 10MHz channel spacing

Definition at line 841 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate19_5MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 19.5Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 19.5Mbps with 20MHz channel spacing

Definition at line 1038 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate1_5MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 1.5Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 1.5Mbps with 5MHz channel spacing

Definition at line 882 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate21_7MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 21.7Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 21.7Mbps with 20MHz channel spacing

Definition at line 1051 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate24Mbps ( )
static

Return a WifiMode for ODFM at 24Mbps.

Returns
a WifiMode for OFDM at 24Mbps

Definition at line 722 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate24MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 24Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 24Mbps with 10MHz channel spacing

Definition at line 854 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate26MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 26Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 26Mbps with 20MHz channel spacing

Definition at line 1065 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate27MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 27Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 27Mbps with 10MHz channel spacing

Definition at line 867 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate27MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 27Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 27Mbps with 40MHz channel spacing

Definition at line 1222 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), GetPlcpHeaderMode(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate28_9MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 28.9Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 28.9Mbps with 20MHz channel spacing

Definition at line 1078 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate2_25MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 2.25Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 2.25Mbps with 5MHz channel spacing

Definition at line 895 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate30MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 30Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 30Mbps with 40MHz channel spacing

Definition at line 1234 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate36Mbps ( )
static

Return a WifiMode for ODFM at 36Mbps.

Returns
a WifiMode for OFDM at 36Mbps

Definition at line 735 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate39MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 39Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 39Mbps with 20MHz channel spacing

Definition at line 1091 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate3MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 3Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 3Mbps with 10MHz channel spacing

Definition at line 776 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate3MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 3Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 3Mbps with 5MHz channel spacing

Definition at line 908 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate40_5MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 40.5Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 40.5Mbps with 40MHz channel spacing

Definition at line 1247 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate43_3MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 43.3Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 43.3Mbps with 20MHz channel spacing

Definition at line 1104 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate45MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 45Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 45Mbps with 40MHz channel spacing

Definition at line 1259 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate48Mbps ( )
static

Return a WifiMode for ODFM at 48Mbps.

Returns
a WifiMode for OFDM at 48Mbps

Definition at line 748 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate4_5MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 4.5Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 4.5Mbps with 10MHz channel spacing

Definition at line 789 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate4_5MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 4.5Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 4.5Mbps with 5MHz channel spacing

Definition at line 921 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate52MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 52Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 52Mbps with 20MHz channel spacing

Definition at line 1117 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate54Mbps ( )
static

Return a WifiMode for ODFM at 54Mbps.

Returns
a WifiMode for OFDM at 54Mbps

Definition at line 761 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::TxDurationTest::DoRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate54MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 54Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 54Mbps with 40MHz channel spacing

Definition at line 1272 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate57_8MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 57.8Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 57.8Mbps with 20MHz channel spacing

Definition at line 1130 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_2_3, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate58_5MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 58.5Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 58.5Mbps with 20MHz channel spacing

Definition at line 1144 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate60MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 60Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 60Mbps with 40MHz channel spacing

Definition at line 1285 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate65MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 65Mbps with 20MHz channel spacing

Definition at line 1170 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_5_6, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::TxDurationTest::DoRun(), ns3::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate65MbpsBW20MHzShGi ( )
static

Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing.

The rate supports short guard interval.

Returns
a WifiMode for OFDM at 65Mbps with 20MHz channel spacing

Definition at line 1157 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::TxDurationTest::DoRun(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate6_5MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 6.5Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 6.5Mbps with 20MHz channel spacing

Definition at line 988 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), ns3::YansWifiPhy::GetMembershipSelectorModes(), GetMFPlcpHeaderMode(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate6Mbps ( )
static

Return a WifiMode for ODFM at 6Mbps.

Returns
a WifiMode for OFDM at 6Mbps

Definition at line 670 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), ns3::YansWifiPhy::ConfigureHolland(), anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and GetPlcpHeaderMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate6MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 6Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 6Mbps with 10MHz channel spacing

Definition at line 802 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate6MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 6Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 6Mbps with 5MHz channel spacing

Definition at line 934 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate72_2MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 72.2Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 72.2Mbps with 20MHz channel spacing

Definition at line 1183 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_5_6, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate7_2MbpsBW20MHz ( )
static

Return a WifiMode for ODFM at 7.2Mbps with 20MHz channel spacing.

Returns
a WifiMode for OFDM at 7.2Mbps with 20MHz channel spacing

Definition at line 1000 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_1_2, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate81MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 81Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 81Mbps with 40MHz channel spacing

Definition at line 1298 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by anonymous_namespace{wifi-phy.cc}::Constructor::Constructor(), and ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate90MbpsBW40MHz ( )
static

Return a WifiMode for ODFM at 90Mbps with 40MHz channel spacing.

Returns
a WifiMode for OFDM at 90Mbps with 40MHz channel spacing

Definition at line 1310 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_HT.

Referenced by ns3::YansWifiPhy::McsToWifiMode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate9Mbps ( )
static

Return a WifiMode for ODFM at 9Mbps.

Returns
a WifiMode for OFDM at 9Mbps

Definition at line 683 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211a(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate9MbpsBW10MHz ( )
static

Return a WifiMode for ODFM at 9Mbps with 10MHz channel spacing.

Returns
a WifiMode for OFDM at 9Mbps with 10MHz channel spacing

Definition at line 815 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_10Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetOfdmRate9MbpsBW5MHz ( )
static

Return a WifiMode for ODFM at 9Mbps with 5MHz channel spacing.

Returns
a WifiMode for OFDM at 9Mbps with 5MHz channel spacing

Definition at line 947 of file wifi-phy.cc.

References ns3::WifiModeFactory::CreateWifiMode(), ns3::WIFI_CODE_RATE_3_4, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by ns3::YansWifiPhy::Configure80211_5Mhz(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

double ns3::WifiPhy::GetPayloadDurationMicroSeconds ( uint32_t  size,
WifiTxVector  txvector 
)
static
Parameters
sizethe number of bytes in the packet to send
txvectorthe transmission parameters used for this packet
Returns
the duration of the payload in microseconds

Definition at line 333 of file wifi-phy.cc.

References ns3::WifiMode::GetBandwidth(), ns3::WifiMode::GetDataRate(), ns3::WifiTxVector::GetMode(), ns3::WifiMode::GetModulationClass(), ns3::WifiTxVector::GetNss(), ns3::WifiMode::GetUniqueName(), ns3::WifiTxVector::IsStbc(), NS_FATAL_ERROR, NS_LOG_FUNCTION, NS_LOG_LOGIC, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HT, and ns3::WIFI_MOD_CLASS_OFDM.

Referenced by CalculateTxDuration(), and ns3::TxDurationTest::CheckPayloadDuration().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint32_t ns3::WifiPhy::GetPlcpHeaderDurationMicroSeconds ( WifiMode  payloadMode,
WifiPreamble  preamble 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
Returns
the duration of the PLCP header in microseconds

Definition at line 222 of file wifi-phy.cc.

References ns3::WifiMode::GetBandwidth(), ns3::WifiMode::GetModulationClass(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_PREAMBLE_HT_GF, ns3::WIFI_PREAMBLE_HT_MF, and ns3::WIFI_PREAMBLE_SHORT.

Referenced by ns3::InterferenceHelper::CalculatePer(), and CalculateTxDuration().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

WifiMode ns3::WifiPhy::GetPlcpHeaderMode ( WifiMode  payloadMode,
WifiPreamble  preamble 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
Returns
the WifiMode used for the transmission of the PLCP header

Definition at line 149 of file wifi-phy.cc.

References ns3::WifiMode::GetBandwidth(), GetDsssRate1Mbps(), GetDsssRate2Mbps(), GetErpOfdmRate6Mbps(), ns3::WifiMode::GetModulationClass(), GetOfdmRate13MbpsBW20MHz(), GetOfdmRate1_5MbpsBW5MHz(), GetOfdmRate27MbpsBW40MHz(), GetOfdmRate3MbpsBW10MHz(), GetOfdmRate6Mbps(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, ns3::WIFI_PREAMBLE_HT_GF, ns3::WIFI_PREAMBLE_HT_MF, and ns3::WIFI_PREAMBLE_LONG.

Referenced by ns3::InterferenceHelper::CalculatePer().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint32_t ns3::WifiPhy::GetPlcpHtSigHeaderDurationMicroSeconds ( WifiMode  payloadMode,
WifiPreamble  preamble 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
Returns
the duration of the GT-SIG in Mixed Format and greenfield format PLCP header

Definition at line 130 of file wifi-phy.cc.

References ns3::WIFI_PREAMBLE_HT_GF, and ns3::WIFI_PREAMBLE_HT_MF.

Referenced by ns3::InterferenceHelper::CalculatePer(), and CalculateTxDuration().

+ Here is the caller graph for this function:

uint32_t ns3::WifiPhy::GetPlcpHtTrainingSymbolDurationMicroSeconds ( WifiMode  payloadMode,
WifiPreamble  preamble,
WifiTxVector  txvector 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
txvectorthe transmission parameters used for this packet
Returns
the training symbol duration

Definition at line 114 of file wifi-phy.cc.

References ns3::WifiTxVector::GetNess(), ns3::WifiTxVector::GetNss(), ns3::WIFI_PREAMBLE_HT_GF, and ns3::WIFI_PREAMBLE_HT_MF.

Referenced by ns3::InterferenceHelper::CalculatePer(), and CalculateTxDuration().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint32_t ns3::WifiPhy::GetPlcpPreambleDurationMicroSeconds ( WifiMode  payloadMode,
WifiPreamble  preamble 
)
static
Parameters
payloadModethe WifiMode use for the transmission of the payload
preamblethe type of preamble
Returns
the duration of the PLCP preamble in microseconds

Definition at line 285 of file wifi-phy.cc.

References ns3::WifiMode::GetBandwidth(), ns3::WifiMode::GetModulationClass(), NS_FATAL_ERROR, ns3::WIFI_MOD_CLASS_DSSS, ns3::WIFI_MOD_CLASS_ERP_OFDM, ns3::WIFI_MOD_CLASS_HT, ns3::WIFI_MOD_CLASS_OFDM, and ns3::WIFI_PREAMBLE_SHORT.

Referenced by ns3::InterferenceHelper::CalculatePer(), and CalculateTxDuration().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual Time ns3::WifiPhy::GetStateDuration ( void  )
pure virtual
Returns
the amount of time since the current state has started.

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::GetStbc ( void  ) const
pure virtual
Returns
true if STBC is supported, false otherwise

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::DoGetAckTxStbc(), ns3::WifiRemoteStationManager::DoGetBlockAckTxStbc(), and ns3::WifiRemoteStationManager::DoGetCtsTxStbc().

+ Here is the caller graph for this function:

virtual double ns3::WifiPhy::GetTxPowerEnd ( void  ) const
pure virtual

Return the maximum available transmission power level (dBm).

Returns
the maximum available transmission power level in dBm

Implemented in ns3::YansWifiPhy.

virtual double ns3::WifiPhy::GetTxPowerStart ( void  ) const
pure virtual

Return the minimum available transmission power level (dBm).

Returns
the minimum available transmission power level in dBm

Implemented in ns3::YansWifiPhy.

TypeId ns3::WifiPhy::GetTypeId ( void  )
static
virtual bool ns3::WifiPhy::IsStateBusy ( void  )
pure virtual
Returns
true of the current state of the PHY layer is not WifiPhy::IDLE, false otherwise.

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::IsStateCcaBusy ( void  )
pure virtual
Returns
true of the current state of the PHY layer is WifiPhy::CCA_BUSY, false otherwise.

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::IsStateIdle ( void  )
pure virtual
Returns
true of the current state of the PHY layer is WifiPhy::IDLE, false otherwise.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::FastAckTimeout(), and ns3::MacLow::SuperFastAckTimeout().

+ Here is the caller graph for this function:

virtual bool ns3::WifiPhy::IsStateRx ( void  )
pure virtual
Returns
true of the current state of the PHY layer is WifiPhy::RX, false otherwise.

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::IsStateSwitching ( void  )
pure virtual
Returns
true of the current state of the PHY layer is WifiPhy::SWITCHING, false otherwise.

Implemented in ns3::YansWifiPhy.

virtual bool ns3::WifiPhy::IsStateTx ( void  )
pure virtual
Returns
true of the current state of the PHY layer is WifiPhy::TX, false otherwise.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::StartTransmission().

+ Here is the caller graph for this function:

virtual WifiMode ns3::WifiPhy::McsToWifiMode ( uint8_t  mcs)
pure virtual

For a given MCS finds the corresponding WifiMode and returns it as defined in the IEEE 802.11n standard.

Parameters
mcsthe MCS number
Returns
the WifiMode that corresponds to the given mcs number

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::GetControlAnswerMode().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyMonitorSniffRx ( Ptr< const Packet packet,
uint16_t  channelFreqMhz,
uint16_t  channelNumber,
uint32_t  rate,
bool  isShortPreamble,
double  signalDbm,
double  noiseDbm 
)

Public method used to fire a MonitorSniffer trace for a wifi packet being received.

Implemented for encapsulation purposes.

Parameters
packetthe packet being received
channelFreqMhzthe frequency in MHz at which the packet is received. Note that in real devices this is normally the frequency to which the receiver is tuned, and this can be different than the frequency at which the packet was originally transmitted. This is because it is possible to have the receiver tuned on a given channel and still to be able to receive packets on a nearby channel.
channelNumberthe channel on which the packet is received
ratethe PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header)
isShortPreambletrue if short preamble is used, false otherwise
signalDbmsignal power in dBm
noiseDbmnoise power in dBm

Definition at line 490 of file wifi-phy.cc.

References m_phyMonitorSniffRxTrace.

Referenced by ns3::YansWifiPhy::EndReceive().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyMonitorSniffTx ( Ptr< const Packet packet,
uint16_t  channelFreqMhz,
uint16_t  channelNumber,
uint32_t  rate,
bool  isShortPreamble,
uint8_t  txPower 
)

Public method used to fire a MonitorSniffer trace for a wifi packet being transmitted.

Implemented for encapsulation purposes.

Parameters
packetthe packet being transmitted
channelFreqMhzthe frequency in MHz at which the packet is transmitted.
channelNumberthe channel on which the packet is transmitted
ratethe PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header)
isShortPreambletrue if short preamble is used, false otherwise
txPowerthe transmission power in dBm

Definition at line 496 of file wifi-phy.cc.

References m_phyMonitorSniffTxTrace.

Referenced by ns3::YansWifiPhy::SendPacket().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyRxBegin ( Ptr< const Packet packet)

Public method used to fire a PhyRxBegin trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet being received

Definition at line 472 of file wifi-phy.cc.

References m_phyRxBeginTrace.

Referenced by ns3::YansWifiPhy::StartReceivePacket().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyRxDrop ( Ptr< const Packet packet)

Public method used to fire a PhyRxDrop trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet that was not successfully received

Definition at line 484 of file wifi-phy.cc.

References m_phyRxDropTrace.

Referenced by ns3::YansWifiPhy::EndReceive(), and ns3::YansWifiPhy::StartReceivePacket().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyRxEnd ( Ptr< const Packet packet)

Public method used to fire a PhyRxEnd trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet received

Definition at line 478 of file wifi-phy.cc.

References m_phyRxEndTrace.

Referenced by ns3::YansWifiPhy::EndReceive().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyTxBegin ( Ptr< const Packet packet)

Public method used to fire a PhyTxBegin trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet being transmitted

Definition at line 454 of file wifi-phy.cc.

References m_phyTxBeginTrace.

Referenced by ns3::YansWifiPhy::SendPacket().

+ Here is the caller graph for this function:

void ns3::WifiPhy::NotifyTxDrop ( Ptr< const Packet packet)

Public method used to fire a PhyTxDrop trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet that was failed to transmitted

Definition at line 466 of file wifi-phy.cc.

References m_phyTxDropTrace.

void ns3::WifiPhy::NotifyTxEnd ( Ptr< const Packet packet)

Public method used to fire a PhyTxEnd trace.

Implemented for encapsulation purposes.

Parameters
packetthe packet that was transmitted

Definition at line 460 of file wifi-phy.cc.

References m_phyTxEndTrace.

virtual void ns3::WifiPhy::RegisterListener ( WifiPhyListener listener)
pure virtual
Parameters
listenerthe new listener

Add the input listener to the list of objects to be notified of PHY-level events.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::DcfManager::SetupPhyListener(), and ns3::MacLow::SetupPhyMacLowListener().

+ Here is the caller graph for this function:

virtual void ns3::WifiPhy::SendPacket ( Ptr< const Packet packet,
WifiMode  mode,
enum WifiPreamble  preamble,
WifiTxVector  txvector 
)
pure virtual
Parameters
packetthe packet to send
modethe transmission mode to use to send this packet
preamblethe type of preamble to use to send this packet.
txvectorthe txvector that has tx parameters as txPowerLevel a power level to use to send this packet. The real transmission power is calculated as txPowerMin + txPowerLevel * (txPowerMax - txPowerMin) / nTxLevels

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::ForwardDown().

+ Here is the caller graph for this function:

virtual void ns3::WifiPhy::SetChannelBonding ( bool  channelbonding)
pure virtual
Parameters
channelbondingEnable or disable channel bonding

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetChannelNumber ( uint16_t  id)
pure virtual

Set channel number.

Channel center frequency = Channel starting frequency + 5 MHz * (nch - 1)

where Starting channel frequency is standard-dependent, see SetStandard() as defined in IEEE 802.11-2007 17.3.8.3.2.

Parameters
idthe channel number

Implemented in ns3::YansWifiPhy.

Referenced by ns3::InterferenceHelperSequenceTest::SwitchCh().

+ Here is the caller graph for this function:

virtual void ns3::WifiPhy::SetFrequency ( uint32_t  freq)
pure virtual
Parameters
freqthe operating frequency on this node.

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetGreenfield ( bool  greenfield)
pure virtual
Parameters
greenfieldEnable or disable GreenField

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetGuardInterval ( bool  guardInterval)
pure virtual
Parameters
guardIntervalEnable or disable short guard interval

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetLdpc ( bool  ldpc)
pure virtual
Parameters
ldpcEnable or disable LDPC

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetNumberOfReceiveAntennas ( uint32_t  rx)
pure virtual
Parameters
rxthe number of recievers on this node.

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetNumberOfTransmitAntennas ( uint32_t  tx)
pure virtual
Parameters
txthe number of transmitters on this node.

Implemented in ns3::YansWifiPhy.

virtual void ns3::WifiPhy::SetReceiveErrorCallback ( RxErrorCallback  callback)
pure virtual
Parameters
callbackthe callback to invoke upon erroneous packet reception.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::SetPhy().

+ Here is the caller graph for this function:

virtual void ns3::WifiPhy::SetReceiveOkCallback ( RxOkCallback  callback)
pure virtual
Parameters
callbackthe callback to invoke upon successful packet reception.

Implemented in ns3::YansWifiPhy.

Referenced by ns3::MacLow::SetPhy().

+ Here is the caller graph for this function:

virtual void ns3::WifiPhy::SetStbc ( bool  stbc)
pure virtual
Parameters
stbcEnable or disable STBC is supported

Implemented in ns3::YansWifiPhy.

virtual uint32_t ns3::WifiPhy::WifiModeToMcs ( WifiMode  mode)
pure virtual

For a given WifiMode finds the corresponding MCS value and returns it as defined in the IEEE 802.11n standard.

Parameters
modethe WifiMode
Returns
the MCS number that corresponds to the given WifiMode

Implemented in ns3::YansWifiPhy.

Referenced by ns3::WifiRemoteStationManager::NeedCtsToSelf().

+ Here is the caller graph for this function:

Member Data Documentation

TracedCallback<Ptr<const Packet>, uint16_t, uint16_t, uint32_t, bool, double, double> ns3::WifiPhy::m_phyMonitorSniffRxTrace
private

A trace source that emulates a wifi device in monitor mode sniffing a packet being received.

As a reference with the real world, firing this trace corresponds in the madwifi driver to calling the function ieee80211_input_monitor()

See also
class CallBackTraceSource

Definition at line 1114 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyMonitorSniffRx().

TracedCallback<Ptr<const Packet>, uint16_t, uint16_t, uint32_t, bool,uint8_t> ns3::WifiPhy::m_phyMonitorSniffTxTrace
private

A trace source that emulates a wifi device in monitor mode sniffing a packet being transmitted.

As a reference with the real world, firing this trace corresponds in the madwifi driver to calling the function ieee80211_input_monitor()

See also
class CallBackTraceSource

Definition at line 1126 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyMonitorSniffTx().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyRxBeginTrace
private

The trace source fired when a packet begins the reception process from the medium.

See also
class CallBackTraceSource

Definition at line 1087 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyRxBegin().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyRxDropTrace
private

The trace source fired when the phy layer drops a packet it has received.

See also
class CallBackTraceSource

Definition at line 1102 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyRxDrop().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyRxEndTrace
private

The trace source fired when a packet ends the reception process from the medium.

See also
class CallBackTraceSource

Definition at line 1095 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyRxEnd().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyTxBeginTrace
private

The trace source fired when a packet begins the transmission process on the medium.

See also
class CallBackTraceSource

Definition at line 1063 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyTxBegin().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyTxDropTrace
private

The trace source fired when the phy layer drops a packet as it tries to transmit it.

See also
class CallBackTraceSource

Definition at line 1079 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyTxDrop().

TracedCallback<Ptr<const Packet> > ns3::WifiPhy::m_phyTxEndTrace
private

The trace source fired when a packet ends the transmission process on the medium.

See also
class CallBackTraceSource

Definition at line 1071 of file wifi-phy.h.

Referenced by GetTypeId(), and NotifyTxEnd().


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