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

Implement the header for management frames of type association request. More...

#include "mgt-headers.h"

Inheritance diagram for ns3::MgtAssocRequestHeader:
Collaboration diagram for ns3::MgtAssocRequestHeader:

Public Member Functions

 ~MgtAssocRequestHeader () override=default
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.

Static Public Member Functions

static TypeId GetTypeId ()
 Register this type.

Public Attributes

CapabilityInformation m_capability
 Capability information.
uint16_t m_listenInterval {0}
 listen interval (in units of beacon interval)

Protected Member Functions

uint32_t DeserializeFromPerStaProfileImpl (Buffer::Iterator start, uint16_t length, const MgtAssocRequestHeader &frame)
 Deserialize this header from a Per-STA Profile subelement of a Multi-Link Element.
uint32_t DeserializeImpl (Buffer::Iterator start)
uint32_t GetSerializedSizeImpl () const
uint32_t GetSerializedSizeInPerStaProfileImpl (const MgtAssocRequestHeader &frame) const
void SerializeImpl (Buffer::Iterator start) const
void SerializeInPerStaProfileImpl (Buffer::Iterator start, const MgtAssocRequestHeader &frame) const
 Serialize this header into a Per-STA Profile subelement of a Multi-Link Element.

Friends

class MgtHeaderInPerStaProfile< MgtAssocRequestHeader, AssocRequestElems >
class WifiMgtHeader< MgtAssocRequestHeader, AssocRequestElems >

Detailed Description

Implement the header for management frames of type association request.

Introspection did not find any typical Config paths
No Attributes are defined for this type
No TraceSources are defined for this type
Group: Wifi
Size of this type is 1184 bytes (on a 64-bit architecture).


Definition at line 181 of file mgt-headers.h.

Constructor & Destructor Documentation

◆ ~MgtAssocRequestHeader()

ns3::MgtAssocRequestHeader::~MgtAssocRequestHeader ( )
overridedefault

Member Function Documentation

◆ DeserializeFromPerStaProfileImpl()

uint32_t ns3::MgtAssocRequestHeader::DeserializeFromPerStaProfileImpl ( Buffer::Iterator start,
uint16_t length,
const MgtAssocRequestHeader & frame )
protected

Deserialize this header from a Per-STA Profile subelement of a Multi-Link Element.

Parameters
startan iterator which points to where the header should be read from
lengththe expected number of bytes to read
framethe frame containing the Multi-Link Element
Returns
the number of bytes read

Definition at line 271 of file mgt-headers.cc.

References ns3::Buffer::Iterator::GetDistanceFrom(), m_capability, m_listenInterval, and NS_ASSERT_MSG.

Here is the call graph for this function:

◆ DeserializeImpl()

uint32_t ns3::MgtAssocRequestHeader::DeserializeImpl ( Buffer::Iterator start)
protected

Parameters
startan iterator which points to where the header should read from.
Returns
the number of bytes read.

This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. The data read is expected to match bit-for-bit the representation of this header in real networks.

Note that data is not actually removed from the buffer to which the iterator points. Both Packet::RemoveHeader() and Packet::PeekHeader() call Deserialize(), but only the RemoveHeader() has additional statements to remove the header bytes from the underlying buffer and associated metadata.

Definition at line 245 of file mgt-headers.cc.

References ns3::Buffer::Iterator::GetDistanceFrom(), m_capability, m_listenInterval, and ns3::Buffer::Iterator::ReadU16().

Here is the call graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::MgtAssocRequestHeader::GetInstanceTypeId ( ) const
override

Get the most derived TypeId for this Object.

This method is provided by ns3::Object::GetInstanceTypeId but classes which derive from ns3::ObjectBase directly have to implement it themselves. Typically, this method should simply return the output of GetTypeId().

Returns
The TypeId associated to the most-derived type of this instance.

Definition at line 194 of file mgt-headers.cc.

References GetTypeId().

Here is the call graph for this function:

◆ GetSerializedSizeImpl()

uint32_t ns3::MgtAssocRequestHeader::GetSerializedSizeImpl ( ) const
protected

Returns
the expected size of the header.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. This method should return the number of bytes which are needed to store the full header data by Serialize.

Definition at line 200 of file mgt-headers.cc.

References m_capability.

◆ GetSerializedSizeInPerStaProfileImpl()

uint32_t ns3::MgtAssocRequestHeader::GetSerializedSizeInPerStaProfileImpl ( const MgtAssocRequestHeader & frame) const
protected
Parameters
framethe frame containing the Multi-Link Element
Returns
the number of bytes that are needed to serialize this header into a Per-STA Profile subelement of the Multi-Link Element

Definition at line 212 of file mgt-headers.cc.

References GetSerializedSizeInPerStaProfileImpl(), and m_capability.

Referenced by GetSerializedSizeInPerStaProfileImpl().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::MgtAssocRequestHeader::GetTypeId ( )
static

Register this type.

Returns
The TypeId.

Definition at line 184 of file mgt-headers.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SerializeImpl()

void ns3::MgtAssocRequestHeader::SerializeImpl ( Buffer::Iterator start) const
protected

Parameters
startan iterator which points to where the header should be written.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. The data written is expected to match bit-for-bit the representation of this header in a real network.

Definition at line 224 of file mgt-headers.cc.

References m_capability, m_listenInterval, and ns3::Buffer::Iterator::WriteU16().

Here is the call graph for this function:

◆ SerializeInPerStaProfileImpl()

void ns3::MgtAssocRequestHeader::SerializeInPerStaProfileImpl ( Buffer::Iterator start,
const MgtAssocRequestHeader & frame ) const
protected

Serialize this header into a Per-STA Profile subelement of a Multi-Link Element.

Parameters
startan iterator which points to where the header should be written
framethe frame containing the Multi-Link Element

Definition at line 235 of file mgt-headers.cc.

References m_capability, and SerializeInPerStaProfileImpl().

Referenced by SerializeInPerStaProfileImpl().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MgtHeaderInPerStaProfile< MgtAssocRequestHeader, AssocRequestElems >

Definition at line 1 of file mgt-headers.h.

◆ WifiMgtHeader< MgtAssocRequestHeader, AssocRequestElems >

Definition at line 1 of file mgt-headers.h.

Member Data Documentation

◆ m_capability

◆ m_listenInterval

uint16_t ns3::MgtAssocRequestHeader::m_listenInterval {0}

listen interval (in units of beacon interval)

Definition at line 199 of file mgt-headers.h.

Referenced by DeserializeFromPerStaProfileImpl(), DeserializeImpl(), and SerializeImpl().


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