A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::dot11s::PeerLinkFrameStart Class Reference

802.11s Peer link management frame More...

#include <peer-link-frame.h>

+ Inheritance diagram for ns3::dot11s::PeerLinkFrameStart:
+ Collaboration diagram for ns3::dot11s::PeerLinkFrameStart:

Classes

struct  PlinkFrameStartFields
 fields: More...

Public Member Functions

 PeerLinkFrameStart ()
PlinkFrameStartFields GetFields () const
void SetPlinkFrameStart (PlinkFrameStartFields)
void SetPlinkFrameSubtype (uint8_t subtype)
- Public Member Functions inherited from ns3::Header
virtual ~Header ()

Private Member Functions

 PeerLinkFrameStart (const PeerLinkFrameStart &)
PeerLinkFrameStartoperator= (const PeerLinkFrameStart &)

Private Attributes

uint16_t m_aid
uint16_t m_capability
IeConfiguration m_config
IeMeshId m_meshId
IePeeringProtocol m_protocol
SupportedRates m_rates
uint16_t m_reasonCode
uint8_t m_subtype

Friends

bool operator== (const PeerLinkFrameStart &a, const PeerLinkFrameStart &b)

Inherited from header:

virtual TypeId GetInstanceTypeId () const
virtual void Print (std::ostream &os) const
virtual uint32_t GetSerializedSize () const
virtual void Serialize (Buffer::Iterator start) const
virtual uint32_t Deserialize (Buffer::Iterator start)
static TypeId GetTypeId ()
 This method returns the TypeId associated to ns3::dot11s::PeerLinkFrameStart.

Additional Inherited Members

- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
virtual void NotifyConstructionCompleted (void)

Detailed Description

802.11s Peer link management frame

Peer link management frame included the following (see chapters 7.4.12.1-7.4.12.3 of 802.11s):

  • Subtype field
  • Association ID field
  • Supported rates
  • Mesh ID of mesh

Definition at line 45 of file peer-link-frame.h.

Constructor & Destructor Documentation

ns3::dot11s::PeerLinkFrameStart::PeerLinkFrameStart ( )

Definition at line 31 of file peer-link-frame.cc.

ns3::dot11s::PeerLinkFrameStart::PeerLinkFrameStart ( const PeerLinkFrameStart )
private

Member Function Documentation

TypeId ns3::dot11s::PeerLinkFrameStart::GetInstanceTypeId ( ) const
virtual
Returns
the TypeId associated to the most-derived type of this instance.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Implements ns3::ObjectBase.

Definition at line 93 of file peer-link-frame.cc.

References GetTypeId().

+ Here is the call graph for this function:

uint32_t ns3::dot11s::PeerLinkFrameStart::GetSerializedSize ( ) const
virtual
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.

Implements ns3::Header.

Definition at line 108 of file peer-link-frame.cc.

References ns3::SupportedRates::extended, ns3::dot11s::IeMeshId::GetInformationFieldSize(), ns3::dot11s::IeConfiguration::GetInformationFieldSize(), ns3::ExtendedSupportedRatesIE::GetSerializedSize(), ns3::WifiInformationElement::GetSerializedSize(), m_config, m_meshId, m_rates, m_subtype, NS_ASSERT, ns3::WifiActionHeader::PEER_LINK_CLOSE, and ns3::WifiActionHeader::PEER_LINK_CONFIRM.

+ Here is the call graph for this function:

TypeId ns3::dot11s::PeerLinkFrameStart::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::dot11s::PeerLinkFrameStart.

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Header.

Definition at line 86 of file peer-link-frame.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

PeerLinkFrameStart& ns3::dot11s::PeerLinkFrameStart::operator= ( const PeerLinkFrameStart )
private
void ns3::dot11s::PeerLinkFrameStart::Print ( std::ostream &  os) const
virtual
Parameters
osoutput stream This method is used by Packet::Print to print the content of a trailer as ascii data to a c++ output stream. Although the trailer 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

Implements ns3::Header.

Definition at line 98 of file peer-link-frame.cc.

References m_aid, m_capability, m_config, m_meshId, m_rates, m_reasonCode, m_subtype, ns3::dot11s::IeMeshId::Print(), and ns3::dot11s::IeConfiguration::Print().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLinkFrameStart::Serialize ( Buffer::Iterator  start) const
virtual
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.

Implements ns3::Header.

Definition at line 140 of file peer-link-frame.cc.

References ns3::SupportedRates::extended, m_aid, m_capability, m_config, m_meshId, m_protocol, m_rates, m_reasonCode, m_subtype, NS_ASSERT, ns3::WifiActionHeader::PEER_LINK_CLOSE, ns3::WifiActionHeader::PEER_LINK_CONFIRM, ns3::ExtendedSupportedRatesIE::Serialize(), ns3::WifiInformationElement::Serialize(), visualizer.core::start(), and ns3::Buffer::Iterator::WriteHtolsbU16().

+ Here is the call graph for this function:

void ns3::dot11s::PeerLinkFrameStart::SetPlinkFrameSubtype ( uint8_t  subtype)
Attention
: must be set before deserialize, before only multihop

Definition at line 37 of file peer-link-frame.cc.

References m_subtype.

Referenced by ns3::dot11s::PeerLinkFrameStartTest::DoRun(), and ns3::dot11s::PeerManagementProtocolMac::Receive().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

bool operator== ( const PeerLinkFrameStart a,
const PeerLinkFrameStart b 
)
friend

Definition at line 228 of file peer-link-frame.cc.

Member Data Documentation

uint16_t ns3::dot11s::PeerLinkFrameStart::m_aid
private
uint16_t ns3::dot11s::PeerLinkFrameStart::m_capability
private
IeConfiguration ns3::dot11s::PeerLinkFrameStart::m_config
private
IeMeshId ns3::dot11s::PeerLinkFrameStart::m_meshId
private
IePeeringProtocol ns3::dot11s::PeerLinkFrameStart::m_protocol
private

Definition at line 80 of file peer-link-frame.h.

Referenced by Deserialize(), Serialize(), and SetPlinkFrameStart().

SupportedRates ns3::dot11s::PeerLinkFrameStart::m_rates
private
uint16_t ns3::dot11s::PeerLinkFrameStart::m_reasonCode
private
uint8_t ns3::dot11s::PeerLinkFrameStart::m_subtype
private

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