Hwmp tag implements interaction between HWMP protocol and MeshWifiMac. More...
#include <hwmp-tag.h>
Public Member Functions | |
HwmpTag () | |
~HwmpTag () | |
void | DecrementTtl () |
virtual void | Deserialize (TagBuffer i) |
Mac48Address | GetAddress () |
virtual TypeId | GetInstanceTypeId () const |
uint32_t | GetMetric () |
uint32_t | GetSeqno () |
virtual uint32_t | GetSerializedSize () const |
uint8_t | GetTtl () |
virtual void | Print (std::ostream &os) const |
virtual void | Serialize (TagBuffer i) const |
void | SetAddress (Mac48Address retransmitter) |
void | SetMetric (uint32_t metric) |
void | SetSeqno (uint32_t seqno) |
void | SetTtl (uint8_t ttl) |
Public Member Functions inherited from ns3::ObjectBase | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Static Public Member Functions inherited from ns3::Tag | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Attributes | |
Mac48Address | m_address |
uint32_t | m_metric |
uint32_t | m_seqno |
uint8_t | m_ttl |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
Hwmp tag implements interaction between HWMP protocol and MeshWifiMac.
Doxygen introspection did not find any typical Config paths.
Hwmp tag keeps the following:
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 48 of file hwmp-tag.h.
ns3::dot11s::HwmpTag::HwmpTag | ( | ) |
Definition at line 30 of file hwmp-tag.cc.
ns3::dot11s::HwmpTag::~HwmpTag | ( | ) |
Definition at line 35 of file hwmp-tag.cc.
void ns3::dot11s::HwmpTag::DecrementTtl | ( | ) |
Definition at line 148 of file hwmp-tag.cc.
References m_ttl.
Referenced by ns3::dot11s::HwmpProtocol::RequestRoute().
|
virtual |
i | the buffer to read data from. |
Read the content of the tag from the provided tag buffer. DO NOT attempt to read more bytes than you wrote with Tag::Serialize.
Implements ns3::Tag.
Definition at line 125 of file hwmp-tag.cc.
References first::address, ns3::Mac48Address::CopyFrom(), m_address, m_metric, m_seqno, m_ttl, ns3::TagBuffer::ReadU32(), and ns3::TagBuffer::ReadU8().
Mac48Address ns3::dot11s::HwmpTag::GetAddress | ( | void | ) |
Definition at line 46 of file hwmp-tag.cc.
References m_address.
Referenced by ns3::dot11s::HwmpProtocolMac::UpdateOutcomingFrame().
|
virtual |
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 95 of file hwmp-tag.cc.
References GetTypeId().
uint32_t ns3::dot11s::HwmpTag::GetMetric | ( | void | ) |
Definition at line 70 of file hwmp-tag.cc.
References m_metric.
uint32_t ns3::dot11s::HwmpTag::GetSeqno | ( | ) |
Definition at line 82 of file hwmp-tag.cc.
References m_seqno.
Referenced by ns3::dot11s::HwmpProtocolMac::UpdateOutcomingFrame().
|
virtual |
This method is typically invoked by Packet::AddPacketTag or Packet::AddByteTag just prior to calling Tag::Serialize.
Implements ns3::Tag.
Definition at line 101 of file hwmp-tag.cc.
uint8_t ns3::dot11s::HwmpTag::GetTtl | ( | void | ) |
Definition at line 58 of file hwmp-tag.cc.
References m_ttl.
Referenced by ns3::dot11s::HwmpProtocol::RequestRoute(), and ns3::dot11s::HwmpProtocolMac::UpdateOutcomingFrame().
|
static |
Definition at line 88 of file hwmp-tag.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
os | the stream to print to |
This method is typically invoked from the Packet::PrintByteTags or Packet::PrintPacketTags methods.
Implements ns3::Tag.
Definition at line 140 of file hwmp-tag.cc.
|
virtual |
i | the buffer to write data into. |
Write the content of the tag in the provided tag buffer. DO NOT attempt to write more bytes than you requested with Tag::GetSerializedSize.
Implements ns3::Tag.
Definition at line 110 of file hwmp-tag.cc.
References first::address, ns3::Mac48Address::CopyTo(), m_address, m_metric, m_seqno, m_ttl, ns3::TagBuffer::WriteU32(), and ns3::TagBuffer::WriteU8().
void ns3::dot11s::HwmpTag::SetAddress | ( | Mac48Address | retransmitter | ) |
Definition at line 40 of file hwmp-tag.cc.
References m_address.
Referenced by ns3::dot11s::HwmpProtocol::ForwardUnicast(), ns3::dot11s::HwmpProtocol::ProactivePathResolved(), ns3::dot11s::HwmpProtocol::ReactivePathResolved(), and ns3::dot11s::HwmpProtocol::RequestRoute().
void ns3::dot11s::HwmpTag::SetMetric | ( | uint32_t | metric | ) |
Definition at line 64 of file hwmp-tag.cc.
References m_metric.
void ns3::dot11s::HwmpTag::SetSeqno | ( | uint32_t | seqno | ) |
Definition at line 76 of file hwmp-tag.cc.
References m_seqno.
Referenced by ns3::dot11s::HwmpProtocolMac::ReceiveData(), and ns3::dot11s::HwmpProtocol::RequestRoute().
void ns3::dot11s::HwmpTag::SetTtl | ( | uint8_t | ttl | ) |
Definition at line 52 of file hwmp-tag.cc.
References m_ttl.
Referenced by ns3::dot11s::HwmpProtocol::ForwardUnicast(), ns3::dot11s::HwmpProtocolMac::ReceiveData(), and ns3::dot11s::HwmpProtocol::RequestRoute().
|
private |
Definition at line 70 of file hwmp-tag.h.
Referenced by Deserialize(), GetAddress(), Print(), Serialize(), and SetAddress().
|
private |
Definition at line 72 of file hwmp-tag.h.
Referenced by Deserialize(), GetMetric(), Print(), Serialize(), and SetMetric().
|
private |
Definition at line 73 of file hwmp-tag.h.
Referenced by Deserialize(), GetSeqno(), Print(), Serialize(), and SetSeqno().
|
private |
Definition at line 71 of file hwmp-tag.h.
Referenced by DecrementTtl(), Deserialize(), GetTtl(), Print(), Serialize(), and SetTtl().