802.11 PHY layer model More...
#include <wifi-phy.h>
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, SLEEP } |
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< WifiChannel > | GetChannel (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 | IsModeSupported (WifiMode mode) const =0 |
Check if the given WifiMode is supported by the PHY. More... | |
virtual bool | IsStateBusy (void)=0 |
virtual bool | IsStateCcaBusy (void)=0 |
virtual bool | IsStateIdle (void)=0 |
virtual bool | IsStateRx (void)=0 |
virtual bool | IsStateSleep (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 | ResumeFromSleep (void)=0 |
Resume from sleep mode. More... | |
virtual void | SendPacket (Ptr< const Packet > packet, WifiTxVector txvector, enum WifiPreamble preamble)=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 | SetSleepMode (void)=0 |
Put in sleep mode. More... | |
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... | |
![]() | |
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... | |
![]() | |
SimpleRefCount () | |
Constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
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 TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static void | Cleanup (void) |
Noop. More... | |
![]() | |
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 | |
![]() | |
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... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
802.11 PHY layer model
ns3::WifiPhy is accessible through the following paths with Config::Set and Config::Connect:
No Attributes are defined for this type.
Definition at line 126 of file wifi-phy.h.
typedef Callback<void,Ptr<const Packet>, double> ns3::WifiPhy::RxErrorCallback |
arg1: packet received unsuccessfully arg2: snr of packet
Definition at line 171 of file wifi-phy.h.
typedef Callback<void,Ptr<Packet>, double, WifiMode, enum WifiPreamble> ns3::WifiPhy::RxOkCallback |
arg1: packet received successfully arg2: snr of packet arg3: mode of packet arg4: type of preamble used for packet.
Definition at line 166 of file wifi-phy.h.
enum ns3::WifiPhy::State |
The state of the PHY layer.
Definition at line 132 of file wifi-phy.h.
ns3::WifiPhy::WifiPhy | ( | ) |
Definition at line 86 of file wifi-phy.cc.
References NS_LOG_FUNCTION.
|
virtual |
Definition at line 91 of file wifi-phy.cc.
References NS_LOG_FUNCTION.
|
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.
stream | first stream index to use |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
txMode | the transmission mode |
ber | the probability of bit error rate |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::IdealWifiManager::SetupPhy().
|
static |
size | the number of bytes in the packet to send |
txvector | the transmission parameters used for this packet |
preamble | the type of preamble to use for this packet. |
Definition at line 439 of file wifi-phy.cc.
References ns3::WifiTxVector::GetMode(), GetPayloadDurationMicroSeconds(), GetPlcpHeaderDurationMicroSeconds(), GetPlcpHtSigHeaderDurationMicroSeconds(), GetPlcpHtTrainingSymbolDurationMicroSeconds(), GetPlcpPreambleDurationMicroSeconds(), and ns3::MicroSeconds().
Referenced by ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), ns3::MacLow::GetAckDuration(), ns3::MacLow::GetBlockAckDuration(), ns3::MacLow::GetCtsDuration(), ns3::MacLow::NotifyNav(), ns3::MacLow::SendCtsToSelf(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::YansWifiPhy::SendPacket(), ns3::MacLow::SendRtsForPacket(), ns3::MinstrelWifiManager::SetupPhy(), ns3::MacLow::StartDataTxTimers(), and ns3::YansWifiPhy::StartReceivePacket().
|
pure virtual |
Configure the PHY-level parameters for different Wi-Fi standard.
standard | the Wi-Fi standard |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MeshHelper::CreateInterface(), and ns3::WifiHelper::Install().
|
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
selector | index in array of supported memeberships |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().
|
pure virtual |
Return the WifiChannel this WifiPhy is connected to.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiNetDevice::DoGetChannel(), and ns3::WifiNetDevice::GetChannel().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
|
pure virtual |
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.
|
static |
Return a WifiMode for DSSS at 11Mbps.
Definition at line 546 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(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for DSSS at 1Mbps.
Definition at line 504 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 GetPlcpHeaderMode().
|
static |
Return a WifiMode for DSSS at 2Mbps.
Definition at line 517 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 GetPlcpHeaderMode().
|
static |
Return a WifiMode for DSSS at 5.5Mbps.
Definition at line 533 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(), and anonymous_namespace{wifi-phy.cc}::Constructor::Constructor().
|
static |
Return a WifiMode for ERP-ODFM at 12Mbps.
Definition at line 588 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().
|
static |
Return a WifiMode for ERP-ODFM at 18Mbps.
Definition at line 601 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().
|
static |
Return a WifiMode for ERP-ODFM at 24Mbps.
Definition at line 614 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().
|
static |
Return a WifiMode for ERP-ODFM at 36Mbps.
Definition at line 627 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().
|
static |
Return a WifiMode for ERP-ODFM at 48Mbps.
Definition at line 640 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().
|
static |
Return a WifiMode for ERP-ODFM at 54Mbps.
Definition at line 653 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().
|
static |
Return a WifiMode for ERP-ODFM at 6Mbps.
Definition at line 562 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().
|
static |
Return a WifiMode for ERP-ODFM at 9Mbps.
Definition at line 575 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().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), ns3::StaWifiMac::GetHtCapabilities(), ns3::ApWifiMac::GetHtCapabilities(), ns3::WifiRemoteStationManager::LookupState(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::MacLow::SendRtsForPacket(), and ns3::MacLow::StartDataTxTimers().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::DoGetAckTxGuardInterval(), ns3::WifiRemoteStationManager::DoGetBlockAckTxGuardInterval(), ns3::WifiRemoteStationManager::DoGetCtsToSelfTxVector(), ns3::WifiRemoteStationManager::DoGetCtsTxGuardInterval(), ns3::StaWifiMac::GetHtCapabilities(), ns3::ApWifiMac::GetHtCapabilities(), and ns3::WifiRemoteStationManager::LookupState().
|
pure virtual |
Return the start time of the last received packet.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::NavCounterResetCtsMissed().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetHtCapabilities(), and ns3::ApWifiMac::GetHtCapabilities().
|
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
mcs | index in array of supported Mcs |
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().
|
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
selector | index in array of supported memeberships |
Implemented in ns3::YansWifiPhy.
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
Definition at line 100 of file wifi-phy.cc.
References ns3::WifiMode::GetBandwidth(), GetOfdmRate13_5MbpsBW40MHz(), and GetOfdmRate6_5MbpsBW20MHz().
Referenced by ns3::InterferenceHelper::CalculatePer().
|
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.
mode | index in array of supported modes |
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().
|
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
Implemented in ns3::YansWifiPhy.
Referenced by ns3::StaWifiMac::GetSupportedRates(), ns3::ApWifiMac::GetSupportedRates(), and ns3::StaWifiMac::Receive().
|
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
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::GetControlAnswerMode(), ns3::StaWifiMac::GetHtCapabilities(), ns3::ApWifiMac::GetHtCapabilities(), ns3::ApWifiMac::Receive(), and ns3::StaWifiMac::Receive().
|
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.
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().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::GetNumberOfTransmitAntennas().
|
static |
Return a WifiMode for ODFM at 108Mbps with 40MHz channel spacing.
Definition at line 1322 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().
|
static |
Return a WifiMode for ODFM at 120Mbps with 40MHz channel spacing.
Definition at line 1334 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().
|
static |
Return a WifiMode for ODFM at 121.5Mbps with 40MHz channel spacing.
Definition at line 1346 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().
|
static |
Return a WifiMode for ODFM at 12Mbps.
Definition at line 695 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().
|
static |
Return a WifiMode for ODFM at 12Mbps with 10MHz channel spacing.
Definition at line 827 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().
|
static |
Return a WifiMode for ODFM at 12Mbps with 5MHz channel spacing.
Definition at line 959 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().
|
static |
Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing.
Definition at line 1370 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().
|
static |
Return a WifiMode for ODFM at 135Mbps with 40MHz channel spacing.
The rate supports short guard interval.
Definition at line 1358 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().
|
static |
Return a WifiMode for ODFM at 13.5Mbps with 40MHz channel spacing.
Definition at line 1195 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().
|
static |
Return a WifiMode for ODFM at 13.5Mbps with 5MHz channel spacing.
Definition at line 972 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().
|
static |
Return a WifiMode for ODFM at 13Mbps with 20MHz channel spacing.
Definition at line 1012 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().
|
static |
Return a WifiMode for ODFM at 14.4Mbps with 20MHz channel spacing.
Definition at line 1025 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().
|
static |
Return a WifiMode for ODFM at 150Mbps with 40MHz channel spacing.
Definition at line 1383 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().
|
static |
Return a WifiMode for ODFM at 15Mbps with 40MHz channel spacing.
Definition at line 1208 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().
|
static |
Return a WifiMode for ODFM at 18Mbps.
Definition at line 708 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().
|
static |
Return a WifiMode for ODFM at 18Mbps with 10MHz channel spacing.
Definition at line 840 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().
|
static |
Return a WifiMode for ODFM at 19.5Mbps with 20MHz channel spacing.
Definition at line 1037 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().
|
static |
Return a WifiMode for ODFM at 1.5Mbps with 5MHz channel spacing.
Definition at line 881 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().
|
static |
Return a WifiMode for ODFM at 21.7Mbps with 20MHz channel spacing.
Definition at line 1050 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().
|
static |
Return a WifiMode for ODFM at 24Mbps.
Definition at line 721 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().
|
static |
Return a WifiMode for ODFM at 24Mbps with 10MHz channel spacing.
Definition at line 853 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().
|
static |
Return a WifiMode for ODFM at 26Mbps with 20MHz channel spacing.
Definition at line 1064 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().
|
static |
Return a WifiMode for ODFM at 27Mbps with 10MHz channel spacing.
Definition at line 866 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().
|
static |
Return a WifiMode for ODFM at 27Mbps with 40MHz channel spacing.
Definition at line 1221 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().
|
static |
Return a WifiMode for ODFM at 28.9Mbps with 20MHz channel spacing.
Definition at line 1077 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().
|
static |
Return a WifiMode for ODFM at 2.25Mbps with 5MHz channel spacing.
Definition at line 894 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().
|
static |
Return a WifiMode for ODFM at 30Mbps with 40MHz channel spacing.
Definition at line 1233 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().
|
static |
Return a WifiMode for ODFM at 36Mbps.
Definition at line 734 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().
|
static |
Return a WifiMode for ODFM at 39Mbps with 20MHz channel spacing.
Definition at line 1090 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().
|
static |
Return a WifiMode for ODFM at 3Mbps with 10MHz channel spacing.
Definition at line 775 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().
|
static |
Return a WifiMode for ODFM at 3Mbps with 5MHz channel spacing.
Definition at line 907 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().
|
static |
Return a WifiMode for ODFM at 40.5Mbps with 40MHz channel spacing.
Definition at line 1246 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().
|
static |
Return a WifiMode for ODFM at 43.3Mbps with 20MHz channel spacing.
Definition at line 1103 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().
|
static |
Return a WifiMode for ODFM at 45Mbps with 40MHz channel spacing.
Definition at line 1258 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().
|
static |
Return a WifiMode for ODFM at 48Mbps.
Definition at line 747 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().
|
static |
Return a WifiMode for ODFM at 4.5Mbps with 10MHz channel spacing.
Definition at line 788 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().
|
static |
Return a WifiMode for ODFM at 4.5Mbps with 5MHz channel spacing.
Definition at line 920 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().
|
static |
Return a WifiMode for ODFM at 52Mbps with 20MHz channel spacing.
Definition at line 1116 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().
|
static |
Return a WifiMode for ODFM at 54Mbps.
Definition at line 760 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().
|
static |
Return a WifiMode for ODFM at 54Mbps with 40MHz channel spacing.
Definition at line 1271 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().
|
static |
Return a WifiMode for ODFM at 57.8Mbps with 20MHz channel spacing.
Definition at line 1129 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().
|
static |
Return a WifiMode for ODFM at 58.5Mbps with 20MHz channel spacing.
Definition at line 1143 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().
|
static |
Return a WifiMode for ODFM at 60Mbps with 40MHz channel spacing.
Definition at line 1284 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().
|
static |
Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing.
Definition at line 1169 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::YansWifiPhy::GetMembershipSelectorModes(), and ns3::YansWifiPhy::McsToWifiMode().
|
static |
Return a WifiMode for ODFM at 65Mbps with 20MHz channel spacing.
The rate supports short guard interval.
Definition at line 1156 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().
|
static |
Return a WifiMode for ODFM at 6.5Mbps with 20MHz channel spacing.
Definition at line 987 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().
|
static |
Return a WifiMode for ODFM at 6Mbps.
Definition at line 669 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().
|
static |
Return a WifiMode for ODFM at 6Mbps with 10MHz channel spacing.
Definition at line 801 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().
|
static |
Return a WifiMode for ODFM at 6Mbps with 5MHz channel spacing.
Definition at line 933 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().
|
static |
Return a WifiMode for ODFM at 72.2Mbps with 20MHz channel spacing.
Definition at line 1182 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().
|
static |
Return a WifiMode for ODFM at 7.2Mbps with 20MHz channel spacing.
Definition at line 999 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().
|
static |
Return a WifiMode for ODFM at 81Mbps with 40MHz channel spacing.
Definition at line 1297 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().
|
static |
Return a WifiMode for ODFM at 90Mbps with 40MHz channel spacing.
Definition at line 1309 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().
|
static |
Return a WifiMode for ODFM at 9Mbps.
Definition at line 682 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().
|
static |
Return a WifiMode for ODFM at 9Mbps with 10MHz channel spacing.
Definition at line 814 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().
|
static |
Return a WifiMode for ODFM at 9Mbps with 5MHz channel spacing.
Definition at line 946 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().
|
static |
size | the number of bytes in the packet to send |
txvector | the transmission parameters used for this packet |
Definition at line 332 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().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
Definition at line 221 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().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
Definition at line 148 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().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
Definition at line 129 of file wifi-phy.cc.
References ns3::WIFI_PREAMBLE_HT_GF, and ns3::WIFI_PREAMBLE_HT_MF.
Referenced by ns3::InterferenceHelper::CalculatePer(), and CalculateTxDuration().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
txvector | the transmission parameters used for this packet |
Definition at line 113 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().
|
static |
payloadMode | the WifiMode use for the transmission of the payload |
preamble | the type of preamble |
Definition at line 284 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().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::DoGetAckTxStbc(), ns3::WifiRemoteStationManager::DoGetBlockAckTxStbc(), and ns3::WifiRemoteStationManager::DoGetCtsTxStbc().
|
pure virtual |
Return the maximum available transmission power level (dBm).
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Return the minimum available transmission power level (dBm).
Implemented in ns3::YansWifiPhy.
|
static |
Definition at line 54 of file wifi-phy.cc.
References m_phyMonitorSniffRxTrace, m_phyMonitorSniffTxTrace, m_phyRxBeginTrace, m_phyRxDropTrace, m_phyRxEndTrace, m_phyTxBeginTrace, m_phyTxDropTrace, m_phyTxEndTrace, ns3::MakeTraceSourceAccessor(), and ns3::TypeId::SetParent().
|
pure virtual |
Check if the given WifiMode is supported by the PHY.
mode | the wifi mode to check |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::FastAckTimeout(), and ns3::MacLow::SuperFastAckTimeout().
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::StartTransmission().
|
pure virtual |
For a given MCS finds the corresponding WifiMode and returns it as defined in the IEEE 802.11n standard.
mcs | the MCS number |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::GetControlAnswerMode().
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.
packet | the packet being received |
channelFreqMhz | the 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. |
channelNumber | the channel on which the packet is received |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
isShortPreamble | true if short preamble is used, false otherwise |
signalDbm | signal power in dBm |
noiseDbm | noise power in dBm |
Definition at line 489 of file wifi-phy.cc.
References m_phyMonitorSniffRxTrace.
Referenced by ns3::YansWifiPhy::EndReceive().
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.
packet | the packet being transmitted |
channelFreqMhz | the frequency in MHz at which the packet is transmitted. |
channelNumber | the channel on which the packet is transmitted |
rate | the PHY data rate in units of 500kbps (i.e., the same units used both for the radiotap and for the prism header) |
isShortPreamble | true if short preamble is used, false otherwise |
txPower | the transmission power in dBm |
Definition at line 495 of file wifi-phy.cc.
References m_phyMonitorSniffTxTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyRxBegin trace.
Implemented for encapsulation purposes.
packet | the packet being received |
Definition at line 471 of file wifi-phy.cc.
References m_phyRxBeginTrace.
Referenced by ns3::YansWifiPhy::StartReceivePacket().
Public method used to fire a PhyRxDrop trace.
Implemented for encapsulation purposes.
packet | the packet that was not successfully received |
Definition at line 483 of file wifi-phy.cc.
References m_phyRxDropTrace.
Referenced by ns3::YansWifiPhy::EndReceive(), and ns3::YansWifiPhy::StartReceivePacket().
Public method used to fire a PhyRxEnd trace.
Implemented for encapsulation purposes.
packet | the packet received |
Definition at line 477 of file wifi-phy.cc.
References m_phyRxEndTrace.
Referenced by ns3::YansWifiPhy::EndReceive().
Public method used to fire a PhyTxBegin trace.
Implemented for encapsulation purposes.
packet | the packet being transmitted |
Definition at line 453 of file wifi-phy.cc.
References m_phyTxBeginTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyTxDrop trace.
Implemented for encapsulation purposes.
packet | the packet that was failed to transmitted |
Definition at line 465 of file wifi-phy.cc.
References m_phyTxDropTrace.
Referenced by ns3::YansWifiPhy::SendPacket().
Public method used to fire a PhyTxEnd trace.
Implemented for encapsulation purposes.
packet | the packet that was transmitted |
Definition at line 459 of file wifi-phy.cc.
References m_phyTxEndTrace.
|
pure virtual |
listener | the 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().
|
pure virtual |
Resume from sleep mode.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRadioEnergyModelHelper::DoInstall().
|
pure virtual |
packet | the packet to send |
txvector | the txvector that has tx parameters such as mode, the transmission mode to use to send this packet, and txPowerLevel, a power level to use to send this packet. The real transmission power is calculated as txPowerMin + txPowerLevel * (txPowerMax - txPowerMin) / nTxLevels |
preamble | the type of preamble to use to send this packet. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::ForwardDown().
|
pure virtual |
channelbonding | Enable or disable channel bonding |
Implemented in ns3::YansWifiPhy.
|
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 (Section 18.3.8.4.2 "Channel numbering"; IEEE Std 802.11-2012).
id | the channel number |
Implemented in ns3::YansWifiPhy.
Referenced by InterferenceHelperSequenceTest::SwitchCh().
|
pure virtual |
freq | the operating frequency on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
greenfield | Enable or disable GreenField |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
guardInterval | Enable or disable short guard interval |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
ldpc | Enable or disable LDPC |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
rx | the number of recievers on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
tx | the number of transmitters on this node. |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
callback | the callback to invoke upon erroneous packet reception. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::SetPhy().
|
pure virtual |
callback | the callback to invoke upon successful packet reception. |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::MacLow::SetPhy().
|
pure virtual |
Put in sleep mode.
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRadioEnergyModelHelper::DoInstall().
|
pure virtual |
stbc | Enable or disable STBC is supported |
Implemented in ns3::YansWifiPhy.
|
pure virtual |
For a given WifiMode finds the corresponding MCS value and returns it as defined in the IEEE 802.11n standard.
mode | the WifiMode |
Implemented in ns3::YansWifiPhy.
Referenced by ns3::WifiRemoteStationManager::NeedCtsToSelf().
|
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()
Definition at line 1148 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyMonitorSniffRx().
|
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()
Definition at line 1160 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyMonitorSniffTx().
|
private |
The trace source fired when a packet begins the reception process from the medium.
Definition at line 1121 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxBegin().
|
private |
The trace source fired when the phy layer drops a packet it has received.
Definition at line 1136 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxDrop().
|
private |
The trace source fired when a packet ends the reception process from the medium.
Definition at line 1129 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyRxEnd().
|
private |
The trace source fired when a packet begins the transmission process on the medium.
Definition at line 1097 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxBegin().
|
private |
The trace source fired when the phy layer drops a packet as it tries to transmit it.
Definition at line 1113 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxDrop().
|
private |
The trace source fired when a packet ends the transmission process on the medium.
Definition at line 1105 of file wifi-phy.h.
Referenced by GetTypeId(), and NotifyTxEnd().