A Discrete-Event Network Simulator
API
Public Member Functions | Private Attributes | List of all members
ns3::HeOperation Class Reference

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:

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...
 
uint32_t GetBasicHeMcsAndNssSet (void) const
 Return the Basic HE-MCS And Nss field in the HE Operation information element. 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 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...
 
SimpleRefCountoperator= (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

uint32_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...
 

Detailed Description

The HE Operation Information Element

This class knows how to serialise and deserialise the HE Operation Information Element.

See also
HeOperation Attribute

Definition at line 37 of file he-operation.h.

Constructor & Destructor Documentation

◆ HeOperation()

ns3::HeOperation::HeOperation ( )

Definition at line 25 of file he-operation.cc.

Member Function Documentation

◆ DeserializeInformationField()

uint8_t ns3::HeOperation::DeserializeInformationField ( Buffer::Iterator  start,
uint8_t  length 
)
virtual

Deserialize the information field.

Parameters
startthe iterator
lengththe length
Returns
the information field size

Implements ns3::WifiInformationElement.

Definition at line 139 of file he-operation.cc.

References m_basicHeMcsAndNssSet, ns3::Buffer::Iterator::ReadLsbtohU32(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU8(), SetHeOperationParameters(), and visualizer.core::start().

◆ ElementId()

WifiInformationElementId ns3::HeOperation::ElementId ( ) const
virtual

Return the element ID.

Returns
the element ID

Implements ns3::WifiInformationElement.

Definition at line 41 of file he-operation.cc.

References IE_HE_OPERATION.

◆ GetBasicHeMcsAndNssSet()

uint32_t ns3::HeOperation::GetBasicHeMcsAndNssSet ( void  ) const

Return the Basic HE-MCS And Nss field in the HE Operation information element.

Returns
the Basic HE-MCS And Nss field in the HE Operation information element

Definition at line 98 of file he-operation.cc.

References m_basicHeMcsAndNssSet.

Referenced by ns3::operator<<(), and SerializeInformationField().

◆ GetHeOperationParameters()

uint32_t ns3::HeOperation::GetHeOperationParameters ( void  ) const

Return the HE Operation Parameters field in the HE Operation information element.

Returns
the HE Operation Parameters field in the HE Operation information element

Definition at line 75 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().

◆ GetInformationFieldSize()

uint8_t ns3::HeOperation::GetInformationFieldSize ( void  ) const
virtual

Return the information field size.

Returns
the information field size

Implements ns3::WifiInformationElement.

Definition at line 53 of file he-operation.cc.

References m_heSupported, and NS_ASSERT.

◆ GetSerializedSize()

uint16_t ns3::HeOperation::GetSerializedSize ( void  ) const

Return the serialized size of this HE Operations IE.

Returns
the serialized size of this HE Operations IE

Definition at line 114 of file he-operation.cc.

References ns3::WifiInformationElement::GetSerializedSize(), and m_heSupported.

Referenced by ns3::MgtAssocResponseHeader::GetSerializedSize(), and ns3::MgtProbeResponseHeader::GetSerializedSize().

◆ Serialize()

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.

Parameters
start
Returns
an iterator

Definition at line 104 of file he-operation.cc.

References m_heSupported, and ns3::WifiInformationElement::Serialize().

Referenced by ns3::MgtAssocResponseHeader::Serialize(), and ns3::MgtProbeResponseHeader::Serialize().

◆ SerializeInformationField()

void ns3::HeOperation::SerializeInformationField ( Buffer::Iterator  start) const
virtual

Serialize the information field.

Parameters
startthe information field iterator

Implements ns3::WifiInformationElement.

Definition at line 124 of file he-operation.cc.

References GetBasicHeMcsAndNssSet(), GetHeOperationParameters(), m_heSupported, and visualizer.core::start().

◆ SetHeOperationParameters()

void ns3::HeOperation::SetHeOperationParameters ( uint32_t  ctrl)

Set the HE Operation Parameters field in the HE Operation information element.

Parameters
ctrlthe HE Operation Parameters field in the HE Operation information element

Definition at line 61 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().

◆ SetHeSupported()

void ns3::HeOperation::SetHeSupported ( uint8_t  hesupported)

Set the HE supported information element.

Parameters
hesupportedthe HE supported information element

Definition at line 47 of file he-operation.cc.

References m_heSupported.

Referenced by ns3::ApWifiMac::GetHeOperation().

◆ SetMaxHeMcsPerNss()

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).

Parameters
nssthe NSS
maxHeMcsthe maximum supported HE-MCS value corresponding to that NSS

Definition at line 91 of file he-operation.cc.

References m_basicHeMcsAndNssSet, and NS_ASSERT.

Referenced by ns3::ApWifiMac::GetHeOperation().

Member Data Documentation

◆ m_basicHeMcsAndNssSet

uint32_t ns3::HeOperation::m_basicHeMcsAndNssSet
private

basic HE MCS NSS set

Definition at line 134 of file he-operation.h.

Referenced by DeserializeInformationField(), GetBasicHeMcsAndNssSet(), and SetMaxHeMcsPerNss().

◆ m_bssColor

uint8_t ns3::HeOperation::m_bssColor
private

BSS color.

Definition at line 123 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_bssColorDisabled

uint8_t ns3::HeOperation::m_bssColorDisabled
private

BSS color disabled.

Definition at line 130 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_defaultPEDuration

uint8_t ns3::HeOperation::m_defaultPEDuration
private

default PE duration

Definition at line 124 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_dualBeacon

uint8_t ns3::HeOperation::m_dualBeacon
private

Dual Beacon.

Definition at line 131 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_heDurationBasedRtsThreshold

uint16_t ns3::HeOperation::m_heDurationBasedRtsThreshold
private

HE duration based RTS threshold.

Definition at line 126 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_heSupported

uint8_t ns3::HeOperation::m_heSupported
private

This is used to decide whether this element should be added to the frame or not.

Definition at line 139 of file he-operation.h.

Referenced by GetInformationFieldSize(), GetSerializedSize(), Serialize(), SerializeInformationField(), and SetHeSupported().

◆ m_maxBssidIndicator

uint8_t ns3::HeOperation::m_maxBssidIndicator
private

max BSSID indicator

Definition at line 128 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_partialBssColor

uint8_t ns3::HeOperation::m_partialBssColor
private

partial BSS color

Definition at line 127 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_twtRequired

uint8_t ns3::HeOperation::m_twtRequired
private

TWT required.

Definition at line 125 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().

◆ m_txBssidIndicator

uint8_t ns3::HeOperation::m_txBssidIndicator
private

TX BSSID indicator.

Definition at line 129 of file he-operation.h.

Referenced by GetHeOperationParameters(), and SetHeOperationParameters().


The documentation for this class was generated from the following files: