The HE Operation Information ElementThis class knows how to serialise and deserialise the HE Operation Information Element. More...
#include "he-operation.h"
Inheritance diagram for ns3::HeOperation:
Collaboration diagram for ns3::HeOperation:Public Member Functions | |
| HeOperation () | |
| uint8_t | DeserializeInformationField (Buffer::Iterator start, uint8_t length) |
| Deserialize the information field. More... | |
| WifiInformationElementId | ElementId () const |
| Return the element ID. More... | |
| WifiInformationElementId | ElementIdExt () const |
| Get the wifi information element ID extension. More... | |
| uint16_t | GetBasicHeMcsAndNssSet (void) const |
| Return the Basic HE-MCS And Nss field in the HE Operation information element. More... | |
| uint8_t | GetBssColor (void) const |
| Get the BSS color. More... | |
| uint32_t | GetHeOperationParameters (void) const |
| Return the HE Operation Parameters field in the HE Operation information element. More... | |
| uint8_t | GetInformationFieldSize () const |
| Return the information field size. More... | |
| uint16_t | GetSerializedSize () const |
| Return the serialized size of this HE Operations IE. More... | |
| Buffer::Iterator | Serialize (Buffer::Iterator start) const |
| This information element is a bit special in that it is only included if the STA is a HE STA. More... | |
| void | SerializeInformationField (Buffer::Iterator start) const |
| Serialize the information field. More... | |
| void | SetBssColor (uint8_t bssColor) |
| Set the BSS color. More... | |
| void | SetHeOperationParameters (uint32_t ctrl) |
| Set the HE Operation Parameters field in the HE Operation information element. More... | |
| void | SetHeSupported (uint8_t hesupported) |
| Set the HE supported information element. More... | |
| void | SetMaxHeMcsPerNss (uint8_t nss, uint8_t maxHeMcs) |
| Set the Basic HE-MCS and NSS field in the HE Operation information element by specifying the tuple (nss, maxMcs). More... | |
Public Member Functions inherited from ns3::WifiInformationElement | |
| virtual | ~WifiInformationElement () |
| Buffer::Iterator | Deserialize (Buffer::Iterator i) |
| Deserialize entire IE, which must be present. More... | |
| Buffer::Iterator | DeserializeIfPresent (Buffer::Iterator i) |
| Deserialize entire IE if it is present. More... | |
| uint16_t | GetSerializedSize () const |
| Get the size of the serialized IE including Element ID and length fields. More... | |
| virtual bool | operator== (WifiInformationElement const &a) const |
| Compare two IEs for equality by ID & Length, and then through memcmp of serialised version. More... | |
| virtual void | Print (std::ostream &os) const |
| Generate human-readable form of IE. More... | |
| Buffer::Iterator | Serialize (Buffer::Iterator i) const |
| Serialize entire IE including Element ID and length fields. More... | |
Public Member Functions inherited from ns3::SimpleRefCount< WifiInformationElement > | |
| SimpleRefCount () | |
| Default 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 operator. More... | |
| void | Ref (void) const |
| Increment the reference count. More... | |
| void | Unref (void) const |
| Decrement the reference count. More... | |
Private Attributes | |
| uint16_t | m_basicHeMcsAndNssSet |
| basic HE MCS NSS set More... | |
| uint8_t | m_bssColor |
| BSS color. More... | |
| uint8_t | m_bssColorDisabled |
| BSS color disabled. More... | |
| uint8_t | m_defaultPEDuration |
| default PE duration More... | |
| uint8_t | m_dualBeacon |
| Dual Beacon. More... | |
| uint16_t | m_heDurationBasedRtsThreshold |
| HE duration based RTS threshold. More... | |
| uint8_t | m_heSupported |
| This is used to decide whether this element should be added to the frame or not. More... | |
| uint8_t | m_maxBssidIndicator |
| max BSSID indicator More... | |
| uint8_t | m_partialBssColor |
| partial BSS color More... | |
| uint8_t | m_twtRequired |
| TWT required. More... | |
| uint8_t | m_txBssidIndicator |
| TX BSSID indicator. More... | |
The HE Operation Information Element
This class knows how to serialise and deserialise the HE Operation Information Element.
Definition at line 37 of file he-operation.h.
| ns3::HeOperation::HeOperation | ( | ) |
Definition at line 25 of file he-operation.cc.
|
virtual |
Deserialize the information field.
| start | the iterator |
| length | the length |
Implements ns3::WifiInformationElement.
Definition at line 169 of file he-operation.cc.
References m_basicHeMcsAndNssSet, ns3::Buffer::Iterator::ReadLsbtohU32(), ns3::Buffer::Iterator::ReadU16(), SetHeOperationParameters(), and visualizer.core::start().
Here is the call graph for this function:
|
virtual |
Return the element ID.
Implements ns3::WifiInformationElement.
Definition at line 41 of file he-operation.cc.
References IE_EXTENSION.
|
virtual |
Get the wifi information element ID extension.
Reimplemented from ns3::WifiInformationElement.
Definition at line 47 of file he-operation.cc.
References IE_EXT_HE_OPERATION.
| uint16_t ns3::HeOperation::GetBasicHeMcsAndNssSet | ( | void | ) | const |
Return the Basic HE-MCS And Nss field in the HE Operation information element.
Definition at line 117 of file he-operation.cc.
References m_basicHeMcsAndNssSet.
Referenced by ns3::operator<<(), and SerializeInformationField().
Here is the caller graph for this function:| uint8_t ns3::HeOperation::GetBssColor | ( | void | ) | const |
Get the BSS color.
Definition at line 131 of file he-operation.cc.
References m_bssColor.
Referenced by ns3::StaWifiMac::UpdateApInfoFromAssocResp().
Here is the caller graph for this function:| uint32_t ns3::HeOperation::GetHeOperationParameters | ( | void | ) | const |
Return the HE Operation Parameters field in the HE Operation information element.
Definition at line 81 of file he-operation.cc.
References m_bssColor, m_bssColorDisabled, m_defaultPEDuration, m_dualBeacon, m_heDurationBasedRtsThreshold, m_maxBssidIndicator, m_partialBssColor, m_twtRequired, and m_txBssidIndicator.
Referenced by ns3::operator<<(), and SerializeInformationField().
Here is the caller graph for this function:
|
virtual |
Return the information field size.
Implements ns3::WifiInformationElement.
Definition at line 59 of file he-operation.cc.
References m_heSupported, and NS_ASSERT.
| uint16_t ns3::HeOperation::GetSerializedSize | ( | void | ) | const |
Return the serialized size of this HE Operations IE.
Definition at line 147 of file he-operation.cc.
References ns3::WifiInformationElement::GetSerializedSize(), and m_heSupported.
Referenced by ns3::MgtAssocResponseHeader::GetSerializedSize(), and ns3::MgtProbeResponseHeader::GetSerializedSize().
Here is the call graph for this function:
Here is the caller graph for this function:| Buffer::Iterator ns3::HeOperation::Serialize | ( | Buffer::Iterator | start | ) | const |
This information element is a bit special in that it is only included if the STA is a HE STA.
To support this we override the Serialize and GetSerializedSize methods of WifiInformationElement.
| start |
Definition at line 137 of file he-operation.cc.
References m_heSupported, and ns3::WifiInformationElement::Serialize().
Referenced by ns3::MgtAssocResponseHeader::Serialize(), and ns3::MgtProbeResponseHeader::Serialize().
Here is the call graph for this function:
Here is the caller graph for this function:
|
virtual |
Serialize the information field.
| start | the information field iterator |
Implements ns3::WifiInformationElement.
Definition at line 157 of file he-operation.cc.
References GetBasicHeMcsAndNssSet(), GetHeOperationParameters(), m_heSupported, and visualizer.core::start().
Here is the call graph for this function:| void ns3::HeOperation::SetBssColor | ( | uint8_t | bssColor | ) |
Set the BSS color.
| bssColor | the BSS color value |
Definition at line 123 of file he-operation.cc.
References m_bssColor, m_bssColorDisabled, and NS_ABORT_UNLESS.
Referenced by ns3::ApWifiMac::GetHeOperation().
Here is the caller graph for this function:| void ns3::HeOperation::SetHeOperationParameters | ( | uint32_t | ctrl | ) |
Set the HE Operation Parameters field in the HE Operation information element.
| ctrl | the HE Operation Parameters field in the HE Operation information element |
Definition at line 67 of file he-operation.cc.
References m_bssColor, m_bssColorDisabled, m_defaultPEDuration, m_dualBeacon, m_heDurationBasedRtsThreshold, m_maxBssidIndicator, m_partialBssColor, m_twtRequired, and m_txBssidIndicator.
Referenced by DeserializeInformationField().
Here is the caller graph for this function:| void ns3::HeOperation::SetHeSupported | ( | uint8_t | hesupported | ) |
Set the HE supported information element.
| hesupported | the HE supported information element |
Definition at line 53 of file he-operation.cc.
References m_heSupported.
Referenced by ns3::ApWifiMac::GetHeOperation().
Here is the caller graph for this function:| void ns3::HeOperation::SetMaxHeMcsPerNss | ( | uint8_t | nss, |
| uint8_t | maxHeMcs | ||
| ) |
Set the Basic HE-MCS and NSS field in the HE Operation information element by specifying the tuple (nss, maxMcs).
| nss | the NSS |
| maxHeMcs | the maximum supported HE-MCS value corresponding to that NSS |
Definition at line 97 of file he-operation.cc.
References m_basicHeMcsAndNssSet, and NS_ASSERT.
Referenced by ns3::ApWifiMac::GetHeOperation().
Here is the caller graph for this function:
|
private |
basic HE MCS NSS set
Definition at line 149 of file he-operation.h.
Referenced by DeserializeInformationField(), GetBasicHeMcsAndNssSet(), and SetMaxHeMcsPerNss().
|
private |
BSS color.
Definition at line 138 of file he-operation.h.
Referenced by GetBssColor(), GetHeOperationParameters(), SetBssColor(), and SetHeOperationParameters().
|
private |
BSS color disabled.
Definition at line 145 of file he-operation.h.
Referenced by GetHeOperationParameters(), SetBssColor(), and SetHeOperationParameters().
|
private |
default PE duration
Definition at line 139 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
Dual Beacon.
Definition at line 146 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
HE duration based RTS threshold.
Definition at line 141 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
This is used to decide whether this element should be added to the frame or not.
Definition at line 154 of file he-operation.h.
Referenced by GetInformationFieldSize(), GetSerializedSize(), Serialize(), SerializeInformationField(), and SetHeSupported().
|
private |
max BSSID indicator
Definition at line 143 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
partial BSS color
Definition at line 142 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
TWT required.
Definition at line 140 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().
|
private |
TX BSSID indicator.
Definition at line 144 of file he-operation.h.
Referenced by GetHeOperationParameters(), and SetHeOperationParameters().