A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::EhtRu::RuSpec Class Reference

RU Specification. More...

#include "eht-ru.h"

+ Collaboration diagram for ns3::EhtRu::RuSpec:

Public Member Functions

 RuSpec ()=default
 Default constructor.
 
 RuSpec (RuType ruType, std::size_t index, bool primary160MHz, bool primary80MHzOrLower80MHz)
 Constructor.
 
std::size_t GetIndex () const
 Get the RU index within the 80 MHz segment.
 
std::size_t GetPhyIndex (MHz_u bw, uint8_t p20Index) const
 Get the RU PHY index.
 
bool GetPrimary160MHz () const
 Get whether the RU is allocated in the primary 160MHz channel.
 
bool GetPrimary80MHzOrLower80MHz () const
 
RuType GetRuType () const
 Get the RU type.
 
bool operator!= (const RuSpec &other) const
 Compare this RU to the given RU.
 
bool operator< (const RuSpec &other) const
 Compare this RU to the given RU.
 
bool operator== (const RuSpec &other) const
 Compare this RU to the given RU.
 

Private Attributes

std::size_t m_index {}
 RU index (starting at 1) within the 80 MHz segment.
 
bool m_primary160MHz {}
 true if the RU is allocated in the primary 160MHz channel
 
bool m_primary80MHzOrLower80MHz {}
 if the RU is allocated in the primary 160MHz channel, true if the RU is allocated in the primary 80MHz channel, otherwise true if the RU is allocated in the lower 80MHz channel
 
RuType m_ruType {}
 RU type.
 

Detailed Description

RU Specification.

Definition at line 33 of file eht-ru.h.

Constructor & Destructor Documentation

◆ RuSpec() [1/2]

ns3::EhtRu::RuSpec::RuSpec ( )
default

Default constructor.

◆ RuSpec() [2/2]

ns3::EhtRu::RuSpec::RuSpec ( RuType ruType,
std::size_t index,
bool primary160MHz,
bool primary80MHzOrLower80MHz )

Constructor.

Parameters
ruTypethe RU type
indexthe RU index (starting at 1) within the 80 MHz segment
primary160MHzwhether the RU is allocated in the primary 160MHz channel
primary80MHzOrLower80MHzif the RU is allocated in the primary 160MHz channel, whether the RU is allocated in the primary 80MHz channel, otherwise whether the RU is allocated in the lower 80MHz channel of the secondary 160 MHz channel

Definition at line 843 of file eht-ru.cc.

References NS_ABORT_MSG_IF.

Member Function Documentation

◆ GetIndex()

std::size_t ns3::EhtRu::RuSpec::GetIndex ( ) const

Get the RU index within the 80 MHz segment.

Returns
the RU index within the 80 MHz segment

Definition at line 863 of file eht-ru.cc.

References NS_ABORT_MSG_IF.

Referenced by ns3::EhtRu::DoesOverlap(), and ns3::operator<<().

+ Here is the caller graph for this function:

◆ GetPhyIndex()

std::size_t ns3::EhtRu::RuSpec::GetPhyIndex ( MHz_u bw,
uint8_t p20Index ) const

Get the RU PHY index.

Parameters
bwthe width of the channel of which the RU is part
p20Indexthe index of the primary20 channel
Returns
the RU PHY index

Definition at line 884 of file eht-ru.cc.

References ns3::EhtRu::GetNRus(), ns3::RU_2x996_TONE, and ns3::RU_4x996_TONE.

+ Here is the call graph for this function:

◆ GetPrimary160MHz()

bool ns3::EhtRu::RuSpec::GetPrimary160MHz ( ) const

Get whether the RU is allocated in the primary 160MHz channel.

Returns
true if the RU is in the primary 160 MHz channel and false otherwise

Definition at line 870 of file eht-ru.cc.

References NS_ABORT_MSG_IF.

Referenced by ns3::EhtRu::DoesOverlap(), and ns3::operator<<().

+ Here is the caller graph for this function:

◆ GetPrimary80MHzOrLower80MHz()

bool ns3::EhtRu::RuSpec::GetPrimary80MHzOrLower80MHz ( ) const
Returns
if the RU is allocated in the primary 160MHz channel, true if the RU is allocated in the primary 80MHz channel, otherwise true if the RU is allocated in the lower 80MHz channel

Definition at line 877 of file eht-ru.cc.

References NS_ABORT_MSG_IF.

Referenced by ns3::EhtRu::DoesOverlap(), and ns3::operator<<().

+ Here is the caller graph for this function:

◆ GetRuType()

RuType ns3::EhtRu::RuSpec::GetRuType ( ) const

Get the RU type.

Returns
the RU type

Definition at line 856 of file eht-ru.cc.

References NS_ABORT_MSG_IF.

Referenced by ns3::EhtRu::DoesOverlap(), and ns3::operator<<().

+ Here is the caller graph for this function:

◆ operator!=()

bool ns3::EhtRu::RuSpec::operator!= ( const RuSpec & other) const

Compare this RU to the given RU.

Parameters
otherthe given RU
Returns
true if this RU differs from the given RU, false otherwise

Definition at line 1189 of file eht-ru.cc.

◆ operator<()

bool ns3::EhtRu::RuSpec::operator< ( const RuSpec & other) const

Compare this RU to the given RU.

Parameters
otherthe given RU
Returns
true if this RU is smaller than the given RU, false otherwise

Definition at line 1194 of file eht-ru.cc.

References m_index, and m_ruType.

◆ operator==()

bool ns3::EhtRu::RuSpec::operator== ( const RuSpec & other) const

Compare this RU to the given RU.

Parameters
otherthe given RU
Returns
true if this RU compares equal to the given RU, false otherwise

Definition at line 1179 of file eht-ru.cc.

References m_index, m_primary160MHz, m_primary80MHzOrLower80MHz, and m_ruType.

Member Data Documentation

◆ m_index

std::size_t ns3::EhtRu::RuSpec::m_index {}
private

RU index (starting at 1) within the 80 MHz segment.

Definition at line 115 of file eht-ru.h.

Referenced by operator<(), and operator==().

◆ m_primary160MHz

bool ns3::EhtRu::RuSpec::m_primary160MHz {}
private

true if the RU is allocated in the primary 160MHz channel

Definition at line 116 of file eht-ru.h.

Referenced by operator==().

◆ m_primary80MHzOrLower80MHz

bool ns3::EhtRu::RuSpec::m_primary80MHzOrLower80MHz {}
private

if the RU is allocated in the primary 160MHz channel, true if the RU is allocated in the primary 80MHz channel, otherwise true if the RU is allocated in the lower 80MHz channel

Definition at line 117 of file eht-ru.h.

Referenced by operator==().

◆ m_ruType

RuType ns3::EhtRu::RuSpec::m_ruType {}
private

RU type.

Definition at line 114 of file eht-ru.h.

Referenced by operator<(), and operator==().


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