Interface MAC plugin FLAME routing protocol. More...
#include <flame-protocol-mac.h>
Classes | |
struct | Statistics |
Public Member Functions | |
FlameProtocolMac (uint32_t, Ptr< FlameProtocol >) | |
uint16_t | GetChannelId () const |
void | Report (std::ostream &) const |
Report statistics. | |
void | ResetStats () |
Inherited from MAC plugin | |
void | SetParent (Ptr< MeshWifiInterfaceMac > parent) |
Each plugin must be installed on interface to work. | |
bool | Receive (Ptr< Packet > packet, const WifiMacHeader &header) |
Process received frame. More... | |
bool | UpdateOutcomingFrame (Ptr< Packet > packet, WifiMacHeader &header, Mac48Address from, Mac48Address to) |
Update frame before it will be forwarded down. More... | |
void | UpdateBeacon (MeshWifiBeacon &beacon) const |
Update beacon is empty, because HWMP does not know anything about beacons. | |
int64_t | AssignStreams (int64_t stream) |
AssignStreams is empty, because this model doesn't use random variables. | |
Public Member Functions inherited from ns3::MeshWifiInterfaceMacPlugin | |
virtual | ~MeshWifiInterfaceMacPlugin () |
This is for subclasses. | |
Public Member Functions inherited from ns3::SimpleRefCount< MeshWifiInterfaceMacPlugin > | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Private Attributes | |
MeshPointDevice parameters: | |
Ptr< FlameProtocol > | m_protocol |
uint32_t | m_ifIndex |
Ptr< MeshWifiInterfaceMac > | m_parent |
Statistics: | |
Statistics | m_stats |
Additional Inherited Members | |
Static Public Member Functions inherited from ns3::SimpleRefCount< MeshWifiInterfaceMacPlugin > | |
static void | Cleanup (void) |
Interface MAC plugin FLAME routing protocol.
Definition at line 34 of file flame-protocol-mac.h.
|
virtual |
Process received frame.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 44 of file flame-protocol-mac.cc.
References ns3::Packet::AddPacketTag(), ns3::Mac48Address::GetBroadcast(), ns3::Packet::GetSize(), NS_FATAL_ERROR, ns3::Packet::PeekPacketTag(), ns3::flame::FlameTag::receiver, and ns3::flame::FlameTag::transmitter.
|
virtual |
Update frame before it will be forwarded down.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 70 of file flame-protocol-mac.cc.
References ns3::Mac48Address::GetBroadcast(), ns3::Packet::GetSize(), NS_FATAL_ERROR, ns3::flame::FlameTag::receiver, and ns3::Packet::RemovePacketTag().