| 
	      
		 A Discrete-Event Network Simulator 
		
	       | 
	      
	      
		API
	       | 
	    
	  
	
	
       
 
Go to the documentation of this file.
   23 #ifndef WIFI_PHY_COMMON_H 
   24 #define WIFI_PHY_COMMON_H 
   27 #include "ns3/fatal-error.h" 
   92         return (os << 
"LONG");
 
   94         return (os << 
"SHORT");
 
   96         return (os << 
"HT_MF");
 
   98         return (os << 
"VHT_SU");
 
  100         return (os << 
"VHT_MU");
 
  102         return (os << 
"HE_SU");
 
  104         return (os << 
"HE_ER_SU");
 
  106         return (os << 
"HE_MU");
 
  108         return (os << 
"HE_TB");
 
  111         return (os << 
"INVALID");
 
  147         return (os << 
"DSSS");
 
  149         return (os << 
"HR/DSSS");
 
  151         return (os << 
"ERP-OFDM");
 
  153         return (os << 
"OFDM");
 
  157         return (os << 
"VHT");
 
  162         return (os << 
"unknown");
 
  205         return (os << 
"preamble");
 
  207         return (os << 
"non-HT header");
 
  209         return (os << 
"HT-SIG");
 
  211         return (os << 
"training");
 
  213         return (os << 
"SIG-A");
 
  215         return (os << 
"SIG-B");
 
  217         return (os << 
"data");
 
  220         return (os << 
"unknown");
 
  249         return (os << 
"DL MU");
 
  251         return (os << 
"UL MU");
 
  254         return (os << 
"unknown");
 
  296         return (os << 
"UNSUPPORTED_SETTINGS");
 
  298         return (os << 
"CHANNEL_SWITCHING");
 
  300         return (os << 
"RXING");
 
  302         return (os << 
"TXING");
 
  304         return (os << 
"SLEEPING");
 
  306         return (os << 
"BUSY_DECODING_PREAMBLE");
 
  308         return (os << 
"PREAMBLE_DETECT_FAILURE");
 
  310         return (os << 
"RECEPTION_ABORTED_BY_TX");
 
  312         return (os << 
"L_SIG_FAILURE");
 
  314         return (os << 
"HT_SIG_FAILURE");
 
  316         return (os << 
"SIG_A_FAILURE");
 
  318         return (os << 
"SIG_B_FAILURE");
 
  320         return (os << 
"PREAMBLE_DETECTION_PACKET_SWITCH");
 
  322         return (os << 
"FRAME_CAPTURE_PACKET_SWITCH");
 
  324         return (os << 
"OBSS_PD_CCA_RESET");
 
  326         return (os << 
"HE_TB_PPDU_TOO_LATE");
 
  328         return (os << 
"FILTERED");
 
  332         return (os << 
"UNKNOWN");
 
  
 
@ WIFI_MOD_CLASS_ERP_OFDM
ERP-OFDM (18.4)
 
@ WIFI_PPDU_FIELD_HT_SIG
HT-SIG field.
 
@ WIFI_PPDU_FIELD_SIG_A
SIG-A field.
 
const uint16_t WIFI_CODE_RATE_5_6
5/6 coding rate
 
bool IsMu(WifiPreamble preamble)
Return true if a preamble corresponds to a multi-user transmission.
 
Every class exported by the ns3 library is enclosed in the ns3 namespace.
 
@ WIFI_MOD_CLASS_HT
HT (Clause 19)
 
@ WIFI_MOD_CLASS_HE
HE (Clause 27)
 
const uint16_t WIFI_CODE_RATE_UNDEFINED
undefined coding rate
 
@ WIFI_MOD_CLASS_OFDM
OFDM (Clause 17)
 
@ WIFI_PPDU_FIELD_PREAMBLE
SYNC + SFD fields for DSSS or ERP, shortSYNC + shortSFD fields for HR/DSSS or ERP,...
 
@ PREAMBLE_DETECT_FAILURE
 
@ FRAME_CAPTURE_PACKET_SWITCH
 
@ WIFI_MOD_CLASS_UNKNOWN
Modulation class unknown or unspecified.
 
Time GetPpduMaxTime(WifiPreamble preamble)
Get the maximum PPDU duration (see Section 10.14 of 802.11-2016) for the PHY layers defining the aPPD...
 
@ PREAMBLE_DETECTION_PACKET_SWITCH
 
@ WIFI_MOD_CLASS_HR_DSSS
HR/DSSS (Clause 16)
 
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
 
uint16_t WifiCodeRate
These constants define the various convolutional coding rates used for the OFDM transmission modes in...
 
@ RECEPTION_ABORTED_BY_TX
 
WifiPhyRxfailureReason
Enumeration of the possible reception failure reasons.
 
uint16_t ConvertGuardIntervalToNanoSeconds(WifiMode mode, const Ptr< WifiNetDevice > device)
Convert the guard interval to nanoseconds based on the WifiMode.
 
const uint16_t WIFI_CODE_RATE_2_3
2/3 coding rate
 
uint16_t GetChannelWidthForTransmission(WifiMode mode, uint16_t maxSupportedChannelWidth)
Return the channel width that corresponds to the selected mode (instead of letting the PHY's default ...
 
WifiPpduField
The type of PPDU field (grouped for convenience)
 
WifiPreamble
The type of preamble to be used by an IEEE 802.11 transmission.
 
WifiPreamble GetPreambleForTransmission(WifiModulationClass modulation, bool useShortPreamble)
Return the preamble to be used for the transmission.
 
const uint16_t WIFI_CODE_RATE_1_2
1/2 coding rate
 
WifiPpduType
The type of PPDU (SU, DL MU, or UL MU)
 
@ WIFI_PPDU_FIELD_DATA
data field
 
bool IsUlMu(WifiPreamble preamble)
Return true if a preamble corresponds to a uplink multi-user transmission.
 
void(* Time)(Time oldValue, Time newValue)
TracedValue callback signature for Time.
 
@ WIFI_PPDU_FIELD_TRAINING
STF + LTF fields (excluding those in preamble for HT-GF)
 
bool IsAllowedControlAnswerModulationClass(WifiModulationClass modClassReq, WifiModulationClass modClassAnswer)
Return whether the modulation class of the selected mode for the control answer frame is allowed.
 
const uint16_t WIFI_CODE_RATE_3_4
3/4 coding rate
 
@ WIFI_MOD_CLASS_VHT
VHT (Clause 22)
 
std::ostream & operator<<(std::ostream &os, const Angles &a)
 
@ WIFI_PPDU_FIELD_SIG_B
SIG-B field.
 
@ WIFI_PPDU_FIELD_NON_HT_HEADER
PHY header field for DSSS or ERP, short PHY header field for HR/DSSS or ERP, field not present for HT...
 
@ WIFI_MOD_CLASS_DSSS
DSSS (Clause 15)
 
WifiModulationClass
This enumeration defines the modulation classes per (Table 10-6 "Modulation classes"; IEEE 802....
 
bool IsDlMu(WifiPreamble preamble)
Return true if a preamble corresponds to a downlink multi-user transmission.