9#ifndef TID_TO_LINK_MAPPING_H
10#define TID_TO_LINK_MAPPING_H
12#include "ns3/nstime.h"
13#include "ns3/wifi-information-element.h"
14#include "ns3/wifi-utils.h"
iterator in a Buffer instance
TID-to-Link Mapping Information Element.
uint16_t DeserializeInformationField(Buffer::Iterator start, uint16_t length) override
Deserialize information (i.e., the body of the IE, not including the Element ID and length octets)
WifiInformationElementId ElementId() const override
Get the wifi information element ID.
void SerializeInformationField(Buffer::Iterator start) const override
Serialize information (i.e., the body of the IE, not including the Element ID and length octets)
std::optional< Time > GetMappingSwitchTime() const
uint16_t GetInformationFieldSize() const override
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
std::optional< uint32_t > m_expectedDuration
Expected Duration.
void SetLinkMappingOfTid(uint8_t tid, std::set< uint8_t > linkIds)
Set the Link Mapping field of the given TID such that the given TID is mapped to the links associated...
std::optional< Time > GetExpectedDuration() const
WifiInformationElementId ElementIdExt() const override
Get the wifi information element ID extension.
std::optional< uint16_t > m_mappingSwitchTime
Mapping Switch Time.
std::map< uint8_t, uint16_t > m_linkMapping
TID-indexed Link Mapping.
void SetExpectedDuration(Time expectedDuration)
Set the Expected Duration field.
void SetMappingSwitchTime(Time mappingSwitchTime)
Set the Mapping Switch Time field.
std::set< uint8_t > GetLinkMappingOfTid(uint8_t tid) const
Get the Link Mapping field of the given TID.
TidToLinkMapping::Control m_control
TID-to-link Mapping Control.
Simulation virtual time values and global simulation resolution.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
constexpr uint16_t WIFI_TID_TO_LINK_MAPPING_CONTROL_BASIC_SIZE_B
size in bytes of the TID-To-Link Control field with default link mapping
constexpr auto DEFAULT_WIFI_TID_LINK_MAP_DIR
default value for the Direction subfield of the TID-To-Link Control field
WifiDirection
Wifi direction.
constexpr uint16_t WIFI_LINK_MAPPING_PRESENCE_IND_SIZE_B
size in bytes of the Link Mapping Presence Indicator field (IEEE 802.11be D2.0 9.4....
constexpr auto DEFAULT_WIFI_TID_LINK_MAPPING
whether to enforce the default link mapping
uint8_t WifiInformationElementId
This type is used to represent an Information Element ID.
TID-to-Link Mapping Control subfield IEEE 802.11be D3.1 Figure 9-1002ap.
bool defaultMapping
Default link mapping.
void Serialize(Buffer::Iterator &start) const
Serialize the TID-to-Link Mapping Control subfield.
bool expectedDurationPresent
Expected Duration Present.
uint16_t GetSubfieldSize() const
bool mappingSwitchTimePresent
These members are private to prevent users to manipulate them directly (their values depend on the va...
uint8_t linkMappingSize
length of the Link Mapping Of TID n field in octets
uint16_t Deserialize(Buffer::Iterator start)
Deserialize the TID-to-Link Mapping Control subfield.
std::optional< uint8_t > presenceBitmap
Link Mapping Presence Indicator.
WifiDirection direction
Direction.