23 #include "ns3/mesh-wifi-interface-mac.h"
25 #include "ns3/packet.h"
59 static TypeId tid =
TypeId (
"ns3::dot11s::PeerLinkOpenStart")
61 .SetGroupName (
"Mesh")
111 uint8_t length = i.
ReadU8 ();
115 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
123 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
159 static TypeId tid =
TypeId (
"ns3::dot11s::PeerLinkCloseStart")
161 .SetGroupName (
"Mesh")
195 uint8_t length = i.
ReadU8 ();
199 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
239 static TypeId tid =
TypeId (
"ns3::dot11s::PeerLinkConfirmStart")
241 .SetGroupName (
"Mesh")
290 uint8_t length = i.
ReadU8 ();
294 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
PlinkCloseStartFields GetFields() const
Get peer link close start fields.
SupportedRates m_rates
rates
virtual void Print(std::ostream &os) const
virtual void Serialize(Buffer::Iterator start) const
#define NS_OBJECT_ENSURE_REGISTERED(type)
Register an Object subclass with the TypeId system.
virtual uint8_t DeserializeInformationField(Buffer::Iterator i, uint8_t length)
Deserialize information (i.e., the body of the IE, not including the Element ID and length octets) ...
IeConfiguration m_config
config
uint16_t GetSerializedSize() const
Return the serialized size of this supported rates information element.
802.11s Peer link open management frame
virtual WifiInformationElementId ElementId() const
virtual TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
uint16_t capability
open and confirm
static TypeId GetTypeId()
Get the type ID.
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
802.11s Peer link close management frame
The Supported Rates Information ElementThis class knows how to serialise and deserialise the Supporte...
static TypeId GetTypeId()
Get the type ID.
bool operator==(const MeshHeader &a, const MeshHeader &b)
virtual void Serialize(Buffer::Iterator start) const
uint32_t GetDistanceFrom(Iterator const &o) const
iterator in a Buffer instance
PlinkOpenStartFields GetFields() const
Get peer link open start fields.
ExtendedSupportedRatesIE extended
extended suppoted rates info element
virtual uint32_t Deserialize(Buffer::Iterator start)
virtual void Print(std::ostream &os) const
Generate human-readable form of IE.
PlinkConfirmStartFields GetFields() const
Get peer link confirm start fields.
IeMeshId meshId
open and close
Buffer::Iterator Serialize(Buffer::Iterator start) const
This information element is a bit special in that it is only included if there are more than 8 rates...
SupportedRates rates
open and confirm
void Next(void)
go forward by one byte
SupportedRates m_rates
rates
IeMeshId meshId
open and close
virtual void Print(std::ostream &os) const
Generate human-readable form of IE.
virtual uint8_t DeserializeInformationField(Buffer::Iterator start, uint8_t length)
Deserialize information (i.e., the body of the IE, not including the Element ID and length octets) ...
virtual void Print(std::ostream &os) const
virtual WifiInformationElementId ElementId() const
Every class exported by the ns3 library is enclosed in the ns3 namespace.
virtual void Serialize(Buffer::Iterator start) const
virtual void Print(std::ostream &os) const
virtual uint8_t GetInformationFieldSize() const
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
uint16_t capability
open and confirm
void SetPlinkCloseStart(PlinkCloseStartFields fields)
Set peer link close start fields.
uint16_t m_capability
capability
virtual uint32_t GetSerializedSize() const
virtual TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
virtual uint32_t GetSerializedSize() const
void WriteHtolsbU16(uint16_t data)
virtual TypeId GetInstanceTypeId() const
Get the most derived TypeId for this Object.
802.11s Peer link confirm management frame
IeConfiguration m_config
config
virtual uint32_t GetSerializedSize() const
virtual uint32_t Deserialize(Buffer::Iterator start)
Describes Mesh Configuration Element see 7.3.2.86 of 802.11s draft 3.0.
virtual uint32_t Deserialize(Buffer::Iterator start)
IeConfiguration config
open and confirm
bool IsEqual(IeMeshId const &o) const
Equality test.
uint16_t ReadLsbtohU16(void)
void SetPlinkOpenStart(PlinkOpenStartFields fields)
Set peer link open start fields.
uint8_t WifiInformationElementId
This type is used to represent an Information Element ID.
SupportedRates rates
open and confirm
uint16_t m_capability
capability
static TypeId GetTypeId()
Get the type ID.
void SetPlinkConfirmStart(PlinkConfirmStartFields fields)
Set peer link confirm start fields.
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
Set the parent TypeId.
IeConfiguration config
open and confirm
virtual uint8_t GetInformationFieldSize() const
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...