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:
 Inheritance diagram for ns3::HeOperation: Collaboration 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:
 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:
 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:
 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:
 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 call graph for this function: Here is the caller 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 call graph for this function: Here is the caller 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:
 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:
 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:
 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:
 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:
 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().