27  : m_plusHtcHeSupport (0),
 
   28    m_twtRequesterSupport (0),
 
   29    m_twtResponderSupport (0),
 
   30    m_fragmentationSupport (0),
 
   31    m_maximumNumberOfFragmentedMsdus (0),
 
   32    m_minimumFragmentSize (0),
 
   33    m_triggerFrameMacPaddingDuration (0),
 
   34    m_multiTidAggregationRxSupport (0),
 
   35    m_heLinkAdaptation (0),
 
   39    m_broadcastTwtSupport (0),
 
   40    m_32bitBaBitmapSupport (0),
 
   41    m_muCascadeSupport (0),
 
   42    m_ackEnabledAggregationSupport (0),
 
   43    m_omControlSupport (0),
 
   45    m_maxAmpduLengthExponent (0),
 
   46    m_amsduFragmentationSupport (0),
 
   47    m_flexibleTwtScheduleSupport (0),
 
   48    m_rxControlFrameToMultiBss (0),
 
   49    m_bsrpBqrpAmpduAggregation (0),
 
   53    m_ndpFeedbackReportSupport (0),
 
   55    m_amsduNotUnderBaInAmpduSupport (0),
 
   56    m_multiTidAggregationTxSupport (0),
 
   57    m_heSubchannelSelectiveTxSupport (0),
 
   58    m_ul2x996ToneRuSupport (0),
 
   59    m_omControlUlMuDataDisableRxSupport (0),
 
   60    m_heDynamicSmPowerSave (0),
 
   61    m_puncturedSoundingSupport (0),
 
   62    m_heVhtTriggerFrameRxSupport (0),
 
   63    m_channelWidthSet (0),
 
   64    m_puncturedPreambleRx (0),
 
   66    m_ldpcCodingInPayload (0),
 
   67    m_heSuPpdu1xHeLtf800nsGi (0),
 
   68    m_midambleRxMaxNsts (0),
 
   69    m_ndp4xHeLtfAnd32msGi (0),
 
   75    m_partialBwUlMuMimo (0),
 
   76    m_dcmMaxConstellationTx (0),
 
   78    m_dcmMaxConstellationRx (0),
 
   80    m_rxPartialBwSuInHeMu (0),
 
   84    m_beamformeeStsForSmallerOrEqualThan80Mhz (0),
 
   85    m_beamformeeStsForLargerThan80Mhz (0),
 
   86    m_numberOfSoundingDimensionsForSmallerOrEqualThan80Mhz (0),
 
   87    m_numberOfSoundingDimensionsForLargerThan80Mhz (0),
 
   88    m_ngEqual16ForSuFeedbackSupport (0),
 
   89    m_ngEqual16ForMuFeedbackSupport (0),
 
   90    m_codebookSize42SuFeedback (0),
 
   91    m_codebookSize75MuFeedback (0),
 
   92    m_triggeredSuBfFeedback (0),
 
   93    m_triggeredMuBfFeedback (0),
 
   94    m_triggeredCqiFeedback (0),
 
   95    m_erPartialBandwidth (0),
 
   96    m_dlMuMimoOnPartialBandwidth (0),
 
   97    m_ppeThresholdPresent (0),
 
   98    m_psrBasedSrSupport (0),
 
   99    m_powerBoostFactorAlphaSupport (0),
 
  100    m_hePpdu4xHeLtf800nsGi (0),
 
  104    m_heErSuPpdu4xHeLtf08sGi (0),
 
  105    m_hePpdu20MHzIn40MHz24GHz (0),
 
  106    m_hePpdu20MHzIn160MHz (0),
 
  107    m_hePpdu80MHzIn160MHz (0),
 
  108    m_heErSuPpdu1xHeLtf08Gi (0),
 
  109    m_midamble2xAnd1xHeLtf (0),
 
  111    m_longerThan16HeSigbOfdm (0),
 
  112    m_nonTriggeredCqiFeedback (0),
 
  113    m_tx1024QamLt242Ru (0),
 
  114    m_rx1024QamLt242Ru (0),
 
  115    m_rxFullBwSuInHeMuCompressedSigB (0),
 
  116    m_rxFullBwSuInHeMuNonCompressedSigB (0),
 
  117    m_nominalPacketPadding (0),
 
  118    m_maxHeLtfRxInHeMuMoreThanOneRu (0),
 
  119    m_highestNssSupportedM1 (0),
 
  120    m_highestMcsSupported (0),
 
  203  uint8_t phyCapabilities3 = i.
ReadU8 ();
 
  351  m_maxNc = (ctrl1 >> 59) & 0x07;
 
  417  val |= (
static_cast<uint64_t
> (
m_maxNc) & 0x07) << 59;
 
  461  for (i = 0; i < 5; i++)
 
  465  for (i = 0; i < 5; i++)
 
  467      m_rxBwMap[i] = (ctrl >> (11 + i)) & 0x01;
 
  479  for (i = 0; i < 5; i++)
 
  483  for (i = 0; i < 5; i++)
 
  485      val |= (
m_rxBwMap[i] & 0x01) << (11 + 1);
 
  575  for (uint8_t i = 0; i <= 3; i++)
 
  577      if ((1ul << (20 + i)) - 1 == maxAmpduLength)
 
iterator in a Buffer instance
 
uint32_t ReadLsbtohU32(void)
 
uint16_t ReadLsbtohU16(void)
 
uint64_t ReadLsbtohU64(void)
 
The IEEE 802.11ax HE Capabilities.
 
bool IsSupportedTxMcs(uint8_t mcs) const
Is RX MCS supported.
 
Buffer::Iterator Serialize(Buffer::Iterator start) const override
Serialize entire IE including Element ID and length fields.
 
uint8_t m_maximumNumberOfFragmentedMsdus
maximum number of fragmentation MSDUs
 
uint8_t GetInformationFieldSize() const override
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
 
uint8_t m_rxControlFrameToMultiBss
receive control frame to multi-BSS
 
uint8_t m_codebookSize75MuFeedback
Codebook Size = {7, 5} MU feedback.
 
uint8_t m_beamformeeStsForLargerThan80Mhz
beamformee STS for > 80MHz
 
bool IsSupportedRxMcs(uint8_t mcs) const
Is RX MCS supported.
 
uint8_t m_dcmMaxRu
DCM Max RU.
 
uint8_t m_erPartialBandwidth
Extended range partial bandwidth.
 
uint8_t m_rxFullBwSuInHeMuCompressedSigB
RX full BW SU using HE MU PPDU with compressed SIGB.
 
uint8_t m_stbcRxLeq80MHz
STBC RX <= 80Mhz.
 
uint8_t m_amsduFragmentationSupport
A-MSDU fragmentation support.
 
uint8_t m_bqrSupport
BQR support.
 
bool GetHePpdu4xHeLtf800nsGi(void) const
Get 4xHE-LTF and 800ns GI in HE SU PPDU and HE MU PPDU reception support.
 
uint8_t m_midambleRxMaxNsts
Midamble TX/RX max NSTS.
 
uint8_t m_heSubchannelSelectiveTxSupport
HE subchannel selective transmission support.
 
void SetHePhyCapabilitiesInfo(uint64_t ctrl1, uint16_t ctrl2, uint8_t ctrl3)
Set the HE PHY Capabilities Info field in the HE Capabilities information element.
 
uint8_t m_partialBwUlMuMimo
Partial Bandwidth UL MU-MIMO.
 
uint8_t m_qtpSupport
QTP support.
 
uint8_t m_triggerFrameMacPaddingDuration
trigger frame MAC padding duration
 
void SetHeSuPpdu1xHeLtf800nsGi(bool heSuPpdu1xHeLtf800nsGi)
Set 1xHE-LTF and 800ns GI in HE SU PPDU reception support.
 
uint8_t GetHighestMcsSupported(void) const
Get highest MCS supported.
 
uint8_t m_heVhtTriggerFrameRxSupport
HE and VHT trigger frame RX support.
 
uint8_t m_dopplerRx
Doppler Rx.
 
uint8_t m_codebookSize42SuFeedback
Codebook Size = {4, 2} SU feedback.
 
uint8_t m_puncturedPreambleRx
Punctured preamble Rx.
 
uint8_t m_allAckSupport
all Ack support
 
void SetLdpcCodingInPayload(uint8_t ldpcCodingInPayload)
Set indication whether the transmission and reception of LDPC encoded packets is supported.
 
uint8_t m_twtRequesterSupport
TWT requester support.
 
uint8_t m_ackEnabledAggregationSupport
ack enabled aggregation support
 
void SetSupportedMcsAndNss(uint16_t ctrl)
Set the MCS and NSS field in the HE Capabilities information element.
 
uint16_t GetHePhyCapabilitiesInfo2() const
Return the octets 9-10 of the HE PHY Capabilities Info field in the HE Capabilities information eleme...
 
uint8_t m_bsrSupport
BSR support.
 
uint8_t m_hePpdu20MHzIn160MHz
20MHz in 160/80+80MHz HE PPDU
 
uint8_t m_multiTidAggregationRxSupport
multi-TID aggregation Rx support
 
uint8_t m_heSuPpdu1xHeLtf800nsGi
HE SU PPDU with 1x HE LTF and 0.8us GI.
 
uint8_t GetLdpcCodingInPayload(void) const
Indicates support for the transmission and reception of LDPC encoded packets.
 
void SetHePpdu4xHeLtf800nsGi(bool heSuPpdu4xHeLtf800nsGi)
Set 4xHE-LTF and 800ns GI in HE SU PPDU and HE MU PPDU reception support.
 
uint8_t m_broadcastTwtSupport
broadcast TXT support
 
uint8_t m_hePpdu20MHzIn40MHz24GHz
20MHz in 40MHz HE PPDU in 2.4GHz band
 
uint8_t m_nominalPacketPadding
Nominal packet padding.
 
void SetHeMacCapabilitiesInfo(uint32_t ctrl1, uint16_t ctrl2)
Set the HE MAC Capabilities Info field in the HE Capabilities information element.
 
uint8_t m_ldpcCodingInPayload
LDPC coding in payload.
 
uint8_t m_psrBasedSrSupport
PSR based SR support.
 
uint8_t DeserializeInformationField(Buffer::Iterator start, uint8_t length) override
Deserialize information (i.e., the body of the IE, not including the Element ID and length octets)
 
std::vector< uint8_t > m_rxBwMap
receive BW map
 
uint8_t m_muCascadeSupport
MU cascade support.
 
void SetHeSupported(uint8_t heSupported)
Set HE supported.
 
uint8_t m_ofdmaRaSupport
OFDMA RA support.
 
uint8_t m_psrResponder
PSR responder.
 
uint8_t m_nonTriggeredCqiFeedback
Non-Triggered CQI feedback.
 
uint8_t m_suBeamformee
SU beamformee.
 
uint8_t m_maxNc
Max Nc for HE compressed beamforming/CQI report.
 
uint8_t GetHePhyCapabilitiesInfo3() const
Return the last octet of the HE PHY Capabilities Info field in the HE Capabilities information elemen...
 
uint8_t m_heErSuPpdu1xHeLtf08Gi
HE ER SU PPDU with 1x HE LTF and 0.8us GI.
 
uint32_t GetHeMacCapabilitiesInfo1() const
Return the 4 first octets of the HE MAC Capabilities Info field in the HE Capabilities information el...
 
uint8_t m_stbcRxGt80MHz
STBC RX > 80MHz.
 
uint8_t m_rx1024QamLt242Ru
TX 1024 QAM < 242 =-tone RU support.
 
uint8_t m_amsduNotUnderBaInAmpduSupport
AMSDU not under BA in Ack enabled A-MPDU support.
 
uint8_t m_32bitBaBitmapSupport
32-bit BA bitmap support
 
void SetHighestNssSupported(uint8_t nss)
Set highest NSS supported.
 
uint8_t m_rxFullBwSuInHeMuNonCompressedSigB
RX full BW SU using HE MU PPDU with non-compressed SIGB.
 
uint8_t m_opsSupport
OPS support.
 
uint32_t GetMaxAmpduLength(void) const
Return the maximum A-MPDU length.
 
uint8_t m_hePpdu4xHeLtf800nsGi
4 times HE-LFT and 800ns GI support for HE-PPDUs
 
uint8_t m_hePpdu80MHzIn160MHz
80MHz in 160/80+80MHz HE PPDU
 
uint8_t m_fragmentationSupport
fragmentation support
 
uint8_t m_highestMcsSupported
highest MCS support
 
uint8_t m_ngEqual16ForSuFeedbackSupport
equal 16 for SU feedback
 
uint8_t m_suBeamformer
SU beamformer.
 
uint8_t m_minimumFragmentSize
minimum fragment size
 
uint8_t m_twtResponderSupport
TWT responder support.
 
uint8_t m_flexibleTwtScheduleSupport
flexible TWT schedule support
 
uint8_t m_bsrpBqrpAmpduAggregation
BSRP BQRP A-MPDU aggregation.
 
uint8_t m_ngEqual16ForMuFeedbackSupport
equal 16 for MU feedback
 
uint8_t m_puncturedSoundingSupport
punctured sounding support
 
uint8_t m_rxPartialBwSuInHeMu
Rx Partial BW SU in 20 MHz HE MU PPDU.
 
uint8_t m_omControlSupport
operation mode control support
 
uint8_t m_ndp4xHeLtfAnd32msGi
NDP with 4x HE-LTF and 3.2us GI.
 
uint8_t m_stbcTxGt80MHz
STBC Tx > 80MHz.
 
uint16_t GetHeMacCapabilitiesInfo2() const
Return the last 2 octets of the HE MAC Capabilities Info field in the HE Capabilities information ele...
 
bool GetHeSuPpdu1xHeLtf800nsGi(void) const
Get 1xHE-LTF and 800ns GI in HE SU PPDU reception support.
 
uint8_t m_midamble2xAnd1xHeLtf
Midamble TX/RX 2x and 1x HE-LTF.
 
uint8_t m_heSupported
This is used to decide if this element should be added to the frame or not.
 
WifiInformationElementId ElementIdExt() const override
 
uint8_t m_beamformeeStsForSmallerOrEqualThan80Mhz
beam formee STS for < 80 MHz
 
uint8_t m_plusHtcHeSupport
HTC HE support.
 
void SetMaxAmpduLength(uint32_t maxAmpduLength)
Set the maximum AMPDU length.
 
uint8_t m_channelWidthSet
channel width set
 
uint8_t m_fullBwUlMuMimo
Full Bandwidth UL MU-MIMO.
 
uint8_t m_maxAmpduLengthExponent
maximum A-MPDU length exponent extension
 
void SerializeInformationField(Buffer::Iterator start) const override
Serialize information (i.e., the body of the IE, not including the Element ID and length octets)
 
uint8_t m_deviceClass
device class
 
uint8_t m_dlMuMimoOnPartialBandwidth
DL MU-MIMO on partial bandwidth.
 
uint64_t GetHePhyCapabilitiesInfo1() const
Return the 8 first octets of the HE PHY Capabilities Info field in the HE Capabilities information el...
 
uint8_t m_powerBoostFactorAlphaSupport
power boost factor alpha support
 
WifiInformationElementId ElementId() const override
 
uint8_t m_ppeThresholdPresent
PPE threshold present.
 
uint8_t m_muBeamformer
MU beamformer.
 
uint8_t m_ndpFeedbackReportSupport
NDP feedback report support.
 
uint16_t GetSerializedSize() const override
Get the size of the serialized IE including Element ID and length fields.
 
uint8_t m_trsSupport
TRS support.
 
uint8_t m_longerThan16HeSigbOfdm
Longer than 16 HE SIG-=B OFDM symbols support.
 
uint16_t GetSupportedMcsAndNss() const
Return the MCS and NSS field in the HE Capabilities information element.
 
uint8_t GetChannelWidthSet(void) const
Get channel width set.
 
uint8_t m_dcmMaxConstellationRx
DCM Max Constellation Rx.
 
uint8_t m_triggeredMuBfFeedback
Triggered MU beamforming feedback.
 
uint8_t m_dcmMaxNssTx
DCM Max NSS Tx.
 
uint8_t GetHighestNssSupported(void) const
Get highest NSS supported.
 
void SetChannelWidthSet(uint8_t channelWidthSet)
Set channel width set.
 
uint8_t m_omControlUlMuDataDisableRxSupport
OM control UL MU data disable RX support.
 
uint8_t m_heErSuPpdu4xHeLtf08sGi
HE ER SU PPDU with 4x HE LTF and 0.8us GI.
 
uint8_t m_triggeredSuBfFeedback
Triggered SU beamforming feedback.
 
uint8_t m_ul2x996ToneRuSupport
UL 2x996 tone RU support.
 
uint8_t m_multiTidAggregationTxSupport
Multi-TID aggregation TX support.
 
std::vector< uint8_t > m_txBwMap
transmit BW map
 
uint8_t m_tx1024QamLt242Ru
TX 1024 QAM < 242 =-tone RU support.
 
uint8_t m_dopplerTx
Doppler Tx.
 
uint8_t m_stbcTxLeq80MHz
STBC TX <= 80MHz.
 
uint8_t m_maxHeLtfRxInHeMuMoreThanOneRu
max HE-LTF symbols STA can Rx in HE MU PPDU with more than one RU
 
uint8_t m_numberOfSoundingDimensionsForLargerThan80Mhz
 
void SetHighestMcsSupported(uint8_t mcs)
Set highest MCS supported.
 
uint8_t m_heLinkAdaptation
HE link adaptation.
 
uint8_t m_highestNssSupportedM1
highest NSS support M1
 
uint8_t m_triggeredCqiFeedback
Triggered CQI feedback.
 
uint8_t m_numberOfSoundingDimensionsForSmallerOrEqualThan80Mhz
 
uint8_t m_dcmMaxNssRx
DCM Max NSS Rx.
 
uint8_t m_dcmMaxConstellationTx
DCM Max Constellation Tx.
 
uint8_t m_heDynamicSmPowerSave
HE dynamic SM power save.
 
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
 
#define NS_ABORT_MSG(msg)
Unconditional abnormal program termination with a message.
 
Every class exported by the ns3 library is enclosed in the ns3 namespace.
 
std::ostream & operator<<(std::ostream &os, const Angles &a)
 
uint8_t WifiInformationElementId
This type is used to represent an Information Element ID.