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

Implement the header for management frames of type association and reassociation response. More...

#include "mgt-headers.h"

Inheritance diagram for ns3::MgtAssocResponseHeader:
Collaboration diagram for ns3::MgtAssocResponseHeader:

Public Member Functions

 ~MgtAssocResponseHeader () 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

uint16_t m_aid {0}
 AID.
CapabilityInformation m_capability
 Capability information.
StatusCode m_statusCode
 Status code.

Protected Member Functions

uint32_t DeserializeFromPerStaProfileImpl (Buffer::Iterator start, uint16_t length, const MgtAssocResponseHeader &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 MgtAssocResponseHeader &frame) const
void PrintImpl (std::ostream &os) const
void SerializeImpl (Buffer::Iterator start) const
void SerializeInPerStaProfileImpl (Buffer::Iterator start, const MgtAssocResponseHeader &frame) const
 Serialize this header into a Per-STA Profile subelement of a Multi-Link Element.

Friends

class MgtHeaderInPerStaProfile< MgtAssocResponseHeader, AssocResponseElems >
class WifiMgtHeader< MgtAssocResponseHeader, AssocResponseElems >

Detailed Description

Implement the header for management frames of type association and reassociation response.

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

Constructor & Destructor Documentation

◆ ~MgtAssocResponseHeader()

ns3::MgtAssocResponseHeader::~MgtAssocResponseHeader ( )
overridedefault

Member Function Documentation

◆ DeserializeFromPerStaProfileImpl()

uint32_t ns3::MgtAssocResponseHeader::DeserializeFromPerStaProfileImpl ( Buffer::Iterator start,
uint16_t length,
const MgtAssocResponseHeader & 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 546 of file mgt-headers.cc.

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

Here is the call graph for this function:

◆ DeserializeImpl()

uint32_t ns3::MgtAssocResponseHeader::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 522 of file mgt-headers.cc.

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

Here is the call graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::MgtAssocResponseHeader::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 459 of file mgt-headers.cc.

References GetTypeId().

Here is the call graph for this function:

◆ GetSerializedSizeImpl()

uint32_t ns3::MgtAssocResponseHeader::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 465 of file mgt-headers.cc.

References m_capability, and m_statusCode.

◆ GetSerializedSizeInPerStaProfileImpl()

uint32_t ns3::MgtAssocResponseHeader::GetSerializedSizeInPerStaProfileImpl ( const MgtAssocResponseHeader & 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 478 of file mgt-headers.cc.

References GetSerializedSizeInPerStaProfileImpl(), m_capability, and m_statusCode.

Referenced by GetSerializedSizeInPerStaProfileImpl().

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

◆ GetTypeId()

TypeId ns3::MgtAssocResponseHeader::GetTypeId ( )
static

Register this type.

Returns
The TypeId.

Definition at line 449 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:

◆ PrintImpl()

void ns3::MgtAssocResponseHeader::PrintImpl ( std::ostream & os) const
protected

Parameters
osoutput stream This method is used by Packet::Print to print the content of a header as ascii data to a c++ output stream. Although the header is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5

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

References m_aid, and m_statusCode.

◆ SerializeImpl()

void ns3::MgtAssocResponseHeader::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 499 of file mgt-headers.cc.

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

Here is the call graph for this function:

◆ SerializeInPerStaProfileImpl()

void ns3::MgtAssocResponseHeader::SerializeInPerStaProfileImpl ( Buffer::Iterator start,
const MgtAssocResponseHeader & 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 511 of file mgt-headers.cc.

References m_capability, m_statusCode, and SerializeInPerStaProfileImpl().

Referenced by SerializeInPerStaProfileImpl().

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

◆ MgtHeaderInPerStaProfile< MgtAssocResponseHeader, AssocResponseElems >

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

◆ WifiMgtHeader< MgtAssocResponseHeader, AssocResponseElems >

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

Member Data Documentation

◆ m_aid

◆ m_capability

◆ m_statusCode


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