EHT MCS and NSS Set subfield. More...
#include "eht-capabilities.h"
Public Types | |
enum | EhtMcsMapType : uint8_t { EHT_MCS_MAP_TYPE_20_MHZ_ONLY = 0 , EHT_MCS_MAP_TYPE_NOT_LARGER_THAN_80_MHZ , EHT_MCS_MAP_TYPE_160_MHZ , EHT_MCS_MAP_TYPE_320_MHZ , EHT_MCS_MAP_TYPE_MAX } |
The different EHT-MCS map types as defined in 9.4.2.313.4 Supported EHT-MCS And NSS Set field. More... | |
Public Member Functions | |
uint16_t | Deserialize (Buffer::Iterator start, bool is2_4Ghz, uint8_t heSupportedChannelWidthSet, bool support320MhzIn6Ghz) |
Deserialize the Supported EHT-MCS And NSS Set subfield. More... | |
uint16_t | GetSize () const |
Get the size of the serialized Supported EHT-MCS And NSS Set subfield. More... | |
void | Serialize (Buffer::Iterator &start) const |
Serialize the Supported EHT-MCS And NSS Set subfield. More... | |
Public Attributes | |
std::map< EhtMcsMapType, std::vector< uint8_t > > | supportedEhtMcsAndNssSet |
Supported EHT-MCS And NSS Set. More... | |
EHT MCS and NSS Set subfield.
See IEEE 802.11be D1.5 9.4.2.313.4 Supported EHT-MCS And NSS Set subfield
Definition at line 155 of file eht-capabilities.h.
enum ns3::EhtMcsAndNssSet::EhtMcsMapType : uint8_t |
The different EHT-MCS map types as defined in 9.4.2.313.4 Supported EHT-MCS And NSS Set field.
Enumerator | |
---|---|
EHT_MCS_MAP_TYPE_20_MHZ_ONLY | |
EHT_MCS_MAP_TYPE_NOT_LARGER_THAN_80_MHZ | |
EHT_MCS_MAP_TYPE_160_MHZ | |
EHT_MCS_MAP_TYPE_320_MHZ | |
EHT_MCS_MAP_TYPE_MAX |
Definition at line 161 of file eht-capabilities.h.
uint16_t ns3::EhtMcsAndNssSet::Deserialize | ( | Buffer::Iterator | start, |
bool | is2_4Ghz, | ||
uint8_t | heSupportedChannelWidthSet, | ||
bool | support320MhzIn6Ghz | ||
) |
Deserialize the Supported EHT-MCS And NSS Set subfield.
start | iterator pointing to where the Supported EHT-MCS And NSS Set subfield should be read from |
is2_4Ghz | indicating whether PHY is operating in 2.4 GHz based on previously serialized IEs |
heSupportedChannelWidthSet | supported channel width set based on previously deserialized HE capabilities IE |
support320MhzIn6Ghz | flag whether 320 MHz is supported in 6 GHz band based on EHT PHY capabilities subfield |
Definition at line 188 of file eht-capabilities.cc.
References EHT_MCS_MAP_TYPE_160_MHZ, EHT_MCS_MAP_TYPE_20_MHZ_ONLY, EHT_MCS_MAP_TYPE_320_MHZ, EHT_MCS_MAP_TYPE_NOT_LARGER_THAN_80_MHZ, ns3::Buffer::Iterator::ReadU8(), two-ray-to-three-gpp-ch-calibration::start, and supportedEhtMcsAndNssSet.
Referenced by ns3::EhtCapabilities::DeserializeInformationField().
uint16_t ns3::EhtMcsAndNssSet::GetSize | ( | void | ) | const |
Get the size of the serialized Supported EHT-MCS And NSS Set subfield.
Definition at line 160 of file eht-capabilities.cc.
References supportedEhtMcsAndNssSet.
Referenced by ns3::EhtCapabilities::GetInformationFieldSize().
void ns3::EhtMcsAndNssSet::Serialize | ( | Buffer::Iterator & | start | ) | const |
Serialize the Supported EHT-MCS And NSS Set subfield.
start | iterator pointing to where the Supported EHT-MCS And NSS Set subfield should be written to |
Definition at line 175 of file eht-capabilities.cc.
References NS_ASSERT, two-ray-to-three-gpp-ch-calibration::start, and supportedEhtMcsAndNssSet.
Referenced by ns3::EhtCapabilities::SerializeInformationField().
std::map<EhtMcsMapType, std::vector<uint8_t> > ns3::EhtMcsAndNssSet::supportedEhtMcsAndNssSet |
Supported EHT-MCS And NSS Set.
Definition at line 171 of file eht-capabilities.h.
Referenced by Deserialize(), ns3::EhtCapabilities::GetHighestSupportedRxMcs(), ns3::EhtCapabilities::GetHighestSupportedTxMcs(), GetSize(), Serialize(), ns3::EhtCapabilities::SetSupportedRxEhtMcsAndNss(), and ns3::EhtCapabilities::SetSupportedTxEhtMcsAndNss().