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

EHT configuration. More...

#include "eht-configuration.h"

+ Inheritance diagram for ns3::EhtConfiguration:
+ Collaboration diagram for ns3::EhtConfiguration:

Public Member Functions

 EhtConfiguration ()
 
 ~EhtConfiguration () override
 
WifiTidLinkMapping GetTidLinkMapping (WifiDirection dir) const
 
void SetTidLinkMapping (WifiDirection dir, const std::map< std::list< uint8_t >, std::list< uint8_t > > &mapping)
 Set the TID-to-Link mapping for the given direction.
 
- Public Member Functions inherited from ns3::Object
 Object ()
 Constructor.
 
 ~Object () override
 Destructor.
 
void AggregateObject (Ptr< Object > other)
 Aggregate two Objects together.
 
void Dispose ()
 Dispose of this Object.
 
AggregateIterator GetAggregateIterator () const
 Get an iterator to the Objects aggregated to this one.
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
template<typename T >
Ptr< T > GetObject () const
 Get a pointer to the requested aggregated Object.
 
template<>
Ptr< ObjectGetObject () const
 Specialization of () for objects of type ns3::Object.
 
template<typename T >
Ptr< T > GetObject (TypeId tid) const
 Get a pointer to the requested aggregated Object by TypeId.
 
template<>
Ptr< ObjectGetObject (TypeId tid) const
 Specialization of (TypeId tid) for objects of type ns3::Object.
 
void Initialize ()
 Invoke DoInitialize on all Objects aggregated to this one.
 
bool IsInitialized () const
 Check if the object has been initialized.
 
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 Default constructor.
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor.
 
uint32_t GetReferenceCount () const
 Get the reference count of the object.
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator.
 
void Ref () const
 Increment the reference count.
 
void Unref () const
 Decrement the reference count.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
virtual TypeId GetInstanceTypeId () const =0
 Get the most derived TypeId for this Object.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Object
static TypeId GetTypeId ()
 Register this type.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Private Attributes

bool m_emlsrActivated
 whether EMLSR option is activated
 
std::map< std::list< uint64_t >, std::list< uint64_t > > m_linkMappingDl
 TIDs-indexed Link Mapping for downlink.
 
std::map< std::list< uint64_t >, std::list< uint64_t > > m_linkMappingUl
 TIDs-indexed Link Mapping for uplink.
 
WifiTidToLinkMappingNegSupport m_tidLinkMappingSupport
 TID-to-Link Mapping Negotiation Support.
 
Time m_transitionTimeout
 Transition timeout.
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
 Copy an Object.
 
virtual void DoDispose ()
 Destructor implementation.
 
virtual void DoInitialize ()
 Initialize() implementation.
 
virtual void NotifyNewAggregate ()
 Notify all Objects aggregated to this one of a new Object being aggregated.
 
- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Detailed Description

EHT configuration.

This object stores EHT configuration information, for use in modifying AP or STA behavior and for constructing EHT-related information elements.

Config Paths

ns3::EhtConfiguration is accessible through the following paths with Config::Set and Config::Connect:

  • "/NodeList/[i]/DeviceList/[i]/$ns3::WifiNetDevice/EhtConfiguration"

Attributes

  • EmlsrActivated: Whether EMLSR option is activated. If activated, EMLSR mode can be enabled on the EMLSR links by an installed EMLSR Manager.
    • Set with class: ns3::BooleanValue
    • Underlying type: bool
    • Initial value: false
    • Flags: constructread
  • TidToLinkMappingDl: A list-of-TIDs-indexed map of the list of links where the TIDs are mapped to for the downlink direction. In case a string is used to set this attribute, the string shall contain the (TID list, link list) pairs separated by a semicolon (;); in every pair, the TID list and the link list are separated by a blank space, and the elements of each list are separated by a comma (,) without spaces. E.g., "0,4 1,2,3; 1 0;2 0,1" means that TIDs 0 and 4 are mapped on links 1, 2 and 3; TID 1 is mapped on link 0 and TID 2 is mapped on links 0 and 1. An empty map indicates the default mapping, i.e., all TIDs are mapped to all setup links. If the map contains the mapping for some TID(s), the mapping corresponding to the missing TID(s) remains unchanged. A non-AP MLD includes this mapping in the Association Request frame sent to an AP MLD, unless the AP MLD advertises a negotiation support of 1 and this mapping is such that TIDs are mapped to distinct link sets, in which case the default mapping is included.
  • TidToLinkMappingNegSupport: TID-to-Link Mapping Negotiation Support.
    • Set with class: ns3::EnumValue
    • Underlying type: NOT_SUPPORTED|SAME_LINK_SET|ANY_LINK_SET
    • Initial value: ANY_LINK_SET
    • Flags: constructwriteread
  • TidToLinkMappingUl: A list-of-TIDs-indexed map of the list of links where the TIDs are mapped to for the uplink direction. In case a string is used to set this attribute, the string shall contain the (TID list, link list) pairs separated by a semicolon (;); in every pair, the TID list and the link list are separated by a blank space, and the elements of each list are separated by a comma (,) without spaces. E.g., "0,4 1,2,3; 1 0;2 0,1" means that TIDs 0 and 4 are mapped on links 1, 2 and 3; TID 1 is mapped on link 0 and TID 2 is mapped on links 0 and 1. An empty map indicates the default mapping, i.e., all TIDs are mapped to all setup links. If the map contains the mapping for some TID(s), the mapping corresponding to the missing TID(s) remains unchanged. A non-AP MLD includes this mapping in the Association Request frame sent to an AP MLD, unless the AP MLD advertises a negotiation support of 1 and this mapping is such that TIDs are mapped to distinct link sets, in which case the default mapping is included.
  • TransitionTimeout: The Transition Timeout (not used by non-AP MLDs). Possible values are 0us or 2^n us, with n=7..16.
    • Set with class: ns3::TimeValue
    • Underlying type: Time +0ns:+6.5536e+07ns
    • Initial value: +0ns
    • Flags: constructwriteread

No TraceSources are defined for this type.
Size of this type is 144 bytes (on a 64-bit architecture).

Definition at line 52 of file eht-configuration.h.

Constructor & Destructor Documentation

◆ EhtConfiguration()

ns3::EhtConfiguration::EhtConfiguration ( )

Definition at line 38 of file eht-configuration.cc.

References NS_LOG_FUNCTION.

◆ ~EhtConfiguration()

ns3::EhtConfiguration::~EhtConfiguration ( )
override

Definition at line 43 of file eht-configuration.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ GetTidLinkMapping()

WifiTidLinkMapping ns3::EhtConfiguration::GetTidLinkMapping ( WifiDirection  dir) const
Parameters
dirthe direction for the requested TID-to-Link Mapping
Returns
a TID-indexed map of the list of links where each TID is mapped to

Definition at line 143 of file eht-configuration.cc.

References ns3::BOTH_DIRECTIONS, dir, ns3::DOWNLINK, m_linkMappingDl, m_linkMappingUl, and NS_ASSERT.

◆ GetTypeId()

◆ SetTidLinkMapping()

void ns3::EhtConfiguration::SetTidLinkMapping ( WifiDirection  dir,
const std::map< std::list< uint8_t >, std::list< uint8_t > > &  mapping 
)

Set the TID-to-Link mapping for the given direction.

Parameters
dirthe direction for the TID-to-Link Mapping
mappinga list-of-TIDs-indexed map of the list of links where the TIDs are mapped to

Definition at line 160 of file eht-configuration.cc.

References ns3::BOTH_DIRECTIONS, dir, ns3::DOWNLINK, m_linkMappingDl, m_linkMappingUl, and NS_ASSERT.

Member Data Documentation

◆ m_emlsrActivated

bool ns3::EhtConfiguration::m_emlsrActivated
private

whether EMLSR option is activated

Definition at line 80 of file eht-configuration.h.

Referenced by GetTypeId().

◆ m_linkMappingDl

std::map<std::list<uint64_t>, std::list<uint64_t> > ns3::EhtConfiguration::m_linkMappingDl
private

TIDs-indexed Link Mapping for downlink.

Definition at line 85 of file eht-configuration.h.

Referenced by GetTidLinkMapping(), GetTypeId(), and SetTidLinkMapping().

◆ m_linkMappingUl

std::map<std::list<uint64_t>, std::list<uint64_t> > ns3::EhtConfiguration::m_linkMappingUl
private

TIDs-indexed Link Mapping for uplink.

Definition at line 87 of file eht-configuration.h.

Referenced by GetTidLinkMapping(), GetTypeId(), and SetTidLinkMapping().

◆ m_tidLinkMappingSupport

WifiTidToLinkMappingNegSupport ns3::EhtConfiguration::m_tidLinkMappingSupport
private

TID-to-Link Mapping Negotiation Support.

Definition at line 83 of file eht-configuration.h.

Referenced by GetTypeId().

◆ m_transitionTimeout

Time ns3::EhtConfiguration::m_transitionTimeout
private

Transition timeout.

Definition at line 81 of file eht-configuration.h.

Referenced by GetTypeId().


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