ns-3
ns3::dot11s::HwmpTag Class Reference

Hwmp tag implements interaction between HWMP protocol and MeshWifiMac. More...

#include <hwmp-tag.h>

Inheritance diagram for ns3::dot11s::HwmpTag:
Collaboration diagram for ns3::dot11s::HwmpTag:

List of all members.

Public Member Functions

void SetAddress (Mac48Address retransmitter)
Mac48Address GetAddress ()
void SetTtl (uint8_t ttl)
uint8_t GetTtl ()
void SetMetric (uint32_t metric)
uint32_t GetMetric ()
void SetSeqno (uint32_t seqno)
uint32_t GetSeqno ()
void DecrementTtl ()
virtual TypeId GetInstanceTypeId () const
virtual uint32_t GetSerializedSize () const
virtual void Serialize (TagBuffer i) const
virtual void Deserialize (TagBuffer i)
virtual void Print (std::ostream &os) const

Static Public Member Functions

static TypeId GetTypeId ()
 This method returns the TypeId associated to ns3::dot11s::HwmpTag.

Detailed Description

Hwmp tag implements interaction between HWMP protocol and MeshWifiMac.

Hwmp tag keeps the following: 1. When packet is passed from Hwmp to 11sMAC:

  • retransmitter address,
  • TTL value, 2. When packet is passed to Hwmp from 11sMAC:
  • lasthop address,
  • TTL value,
  • metric value (metric of link is recalculated at each packet, but routing table stores metric obtained during path discovery procedure)

Member Function Documentation

Parameters:
ithe 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.

References ns3::Mac48Address::CopyFrom(), ns3::TagBuffer::ReadU32(), and ns3::TagBuffer::ReadU8().

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.

References GetTypeId().

uint32_t ns3::dot11s::HwmpTag::GetSerializedSize ( ) const [virtual]
Returns:
the number of bytes required to serialize the data of the tag.

This method is typically invoked by Packet::AddPacketTag or Packet::AddByteTag just prior to calling Tag::Serialize.

Implements ns3::Tag.

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

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

Reimplemented from ns3::Tag.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

void ns3::dot11s::HwmpTag::Print ( std::ostream &  os) const [virtual]
Parameters:
osthe stream to print to

This method is typically invoked from the Packet::PrintByteTags or Packet::PrintPacketTags methods.

Implements ns3::Tag.

void ns3::dot11s::HwmpTag::Serialize ( TagBuffer  i) const [virtual]
Parameters:
ithe 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.

References ns3::Mac48Address::CopyTo(), ns3::TagBuffer::WriteU32(), and ns3::TagBuffer::WriteU8().


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