Interface MAC plugin FLAME routing protocol. More...
#include "flame-protocol-mac.h"
 Inheritance diagram for ns3::flame::FlameProtocolMac:
 Collaboration diagram for ns3::flame::FlameProtocolMac:Classes | |
| struct | Statistics | 
Public Member Functions | |
| FlameProtocolMac (Ptr< FlameProtocol >) | |
| ~FlameProtocolMac () | |
| int64_t | AssignStreams (int64_t stream) | 
| AssignStreams is empty, because this model doesn't use random variables.  More... | |
| uint16_t | GetChannelId () const | 
| bool | Receive (Ptr< Packet > packet, const WifiMacHeader &header) | 
| Process received frame.  More... | |
| void | Report (std::ostream &) const | 
| Report statistics.  More... | |
| void | ResetStats () | 
| void | SetParent (Ptr< MeshWifiInterfaceMac > parent) | 
| Each plugin must be installed on interface to work.  More... | |
| void | UpdateBeacon (MeshWifiBeacon &beacon) const | 
| Update beacon is empty, because HWMP does not know anything about beacons.  More... | |
| bool | UpdateOutcomingFrame (Ptr< Packet > packet, WifiMacHeader &header, Mac48Address from, Mac48Address to) | 
| Update frame before it will be forwarded down.  More... | |
  Public Member Functions inherited from ns3::MeshWifiInterfaceMacPlugin | |
| virtual | ~MeshWifiInterfaceMacPlugin () | 
| This is for subclasses.  More... | |
  Public Member Functions inherited from ns3::SimpleRefCount< MeshWifiInterfaceMacPlugin > | |
| SimpleRefCount () | |
| Constructor.  More... | |
| SimpleRefCount (const SimpleRefCount &o) | |
| Copy constructor.  More... | |
| uint32_t | GetReferenceCount (void) const | 
| Get the reference count of the object.  More... | |
| SimpleRefCount & | operator= (const SimpleRefCount &o) | 
| Assignment.  More... | |
| void | Ref (void) const | 
| Increment the reference count.  More... | |
| void | Unref (void) const | 
| Decrement the reference count.  More... | |
Private Attributes | |
| Ptr< MeshWifiInterfaceMac > | m_parent | 
| Ptr< FlameProtocol > | m_protocol | 
Statistics:  | |
| Statistics | m_stats | 
Additional Inherited Members | |
  Static Public Member Functions inherited from ns3::SimpleRefCount< MeshWifiInterfaceMacPlugin > | |
| static void | Cleanup (void) | 
| Noop.  More... | |
Interface MAC plugin FLAME routing protocol.
Definition at line 34 of file flame-protocol-mac.h.
| ns3::flame::FlameProtocolMac::FlameProtocolMac | ( | Ptr< FlameProtocol > | protocol | ) | 
Definition at line 32 of file flame-protocol-mac.cc.
| ns3::flame::FlameProtocolMac::~FlameProtocolMac | ( | ) | 
Definition at line 36 of file flame-protocol-mac.cc.
References m_parent, and m_protocol.
      
  | 
  inlinevirtual | 
AssignStreams is empty, because this model doesn't use random variables.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 47 of file flame-protocol-mac.h.
| uint16_t ns3::flame::FlameProtocolMac::GetChannelId | ( | ) | const | 
Definition at line 99 of file flame-protocol-mac.cc.
References m_parent.
      
  | 
  virtual | 
Process received frame.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 48 of file flame-protocol-mac.cc.
References ns3::Packet::AddPacketTag(), ns3::WifiMacHeader::GetAddr1(), ns3::WifiMacHeader::GetAddr2(), ns3::Mac48Address::GetBroadcast(), ns3::Packet::GetSize(), ns3::WifiMacHeader::IsData(), m_stats, NS_FATAL_ERROR, ns3::Packet::PeekPacketTag(), ns3::flame::FlameTag::receiver, ns3::flame::FlameProtocolMac::Statistics::rxBroadcast, ns3::flame::FlameProtocolMac::Statistics::rxBytes, ns3::flame::FlameProtocolMac::Statistics::rxUnicast, and ns3::flame::FlameTag::transmitter.
 Here is the call graph for this function:| void ns3::flame::FlameProtocolMac::Report | ( | std::ostream & | os | ) | const | 
Report statistics.
Definition at line 119 of file flame-protocol-mac.cc.
References m_parent, m_stats, and ns3::flame::FlameProtocolMac::Statistics::Print().
 Here is the call graph for this function:| void ns3::flame::FlameProtocolMac::ResetStats | ( | ) | 
Definition at line 128 of file flame-protocol-mac.cc.
References m_stats.
      
  | 
  virtual | 
Each plugin must be installed on interface to work.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 42 of file flame-protocol-mac.cc.
References m_parent.
      
  | 
  inlinevirtual | 
Update beacon is empty, because HWMP does not know anything about beacons.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 45 of file flame-protocol-mac.h.
      
  | 
  virtual | 
Update frame before it will be forwarded down.
Implements ns3::MeshWifiInterfaceMacPlugin.
Definition at line 74 of file flame-protocol-mac.cc.
References ns3::Mac48Address::GetBroadcast(), ns3::Packet::GetSize(), ns3::WifiMacHeader::IsData(), m_stats, NS_FATAL_ERROR, ns3::flame::FlameTag::receiver, ns3::Packet::RemovePacketTag(), ns3::WifiMacHeader::SetAddr1(), ns3::flame::FlameProtocolMac::Statistics::txBroadcast, ns3::flame::FlameProtocolMac::Statistics::txBytes, and ns3::flame::FlameProtocolMac::Statistics::txUnicast.
 Here is the call graph for this function:
      
  | 
  private | 
Definition at line 58 of file flame-protocol-mac.h.
Referenced by GetChannelId(), Report(), SetParent(), and ~FlameProtocolMac().
      
  | 
  private | 
Definition at line 57 of file flame-protocol-mac.h.
Referenced by ~FlameProtocolMac().
      
  | 
  private | 
Definition at line 73 of file flame-protocol-mac.h.
Referenced by Receive(), Report(), ResetStats(), and UpdateOutcomingFrame().