23 #include "ns3/mesh-wifi-interface-mac.h"
25 #include "ns3/packet.h"
33 m_subtype (255), m_capability (0), m_aid (0), m_rates (
SupportedRates ()), m_meshId (),
101 os <<
"subtype = " << (uint16_t)
m_subtype << std::endl <<
"capability = " <<
m_capability << std::endl <<
"laid = "
102 << (uint16_t)
m_aid << std::endl <<
"rates = " <<
m_rates << std::endl <<
"meshId = ";
104 os << std::endl <<
"configuration = ";
179 uint8_t length = i.
ReadU8 ();
183 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
203 uint8_t length = i.
ReadU8 ();
207 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
214 uint8_t length = i.
ReadU8 ();
218 NS_FATAL_ERROR (
"Broken frame: Element ID does not match IE itself!");
IePeeringProtocol protocol
802.11s Peer link management frame
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) ...
void SetPlinkFrameSubtype(uint8_t subtype)
virtual TypeId GetInstanceTypeId() const
virtual void Serialize(Buffer::Iterator start) const
uint16_t GetSerializedSize() const
Return the serialized size of this supported rates information element.
#define NS_ASSERT(condition)
virtual WifiInformationElementId ElementId() const
Own unique Element ID.
NS_OBJECT_ENSURE_REGISTERED(NullMessageSimulatorImpl)
The Supported Rates Information ElementThis class knows how to serialise and deserialise the Supporte...
virtual void Print(std::ostream &os) const
bool operator==(const MeshHeader &a, const MeshHeader &b)
uint32_t GetDistanceFrom(Iterator const &o) const
#define NS_FATAL_ERROR(msg)
fatal error handling
iterator in a Buffer instance
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) ...
ExtendedSupportedRatesIE extended
virtual void Print(std::ostream &os) const
In addition, a subclass may optionally override the following...
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...
void Next(void)
go forward by one byte
virtual void Print(std::ostream &os) const
In addition, a subclass may optionally override the following...
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 WifiInformationElementId ElementId() const
Own unique Element ID.
virtual uint8_t GetInformationFieldSize() const
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
PlinkFrameStartFields GetFields() const
virtual WifiInformationElementId ElementId() const
Own unique Element ID.
void SetPlinkFrameStart(PlinkFrameStartFields)
void WriteHtolsbU16(uint16_t data)
virtual uint32_t GetSerializedSize() const
Describes Mesh Configuration Element see 7.3.2.86 of 802.11s draft 3.0.
IePeeringProtocol m_protocol
bool IsEqual(IeMeshId const &o) const
uint16_t ReadLsbtohU16(void)
uint8_t WifiInformationElementId
This type is used to represent an Information Element ID.
virtual uint8_t GetInformationFieldSize() const
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
virtual uint32_t Deserialize(Buffer::Iterator start)
a unique identifier for an interface.
TypeId SetParent(TypeId tid)
virtual uint8_t GetInformationFieldSize() const
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
static TypeId GetTypeId()