A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::MeshWifiInterfaceMacPlugin Class Referenceabstract

Common interface for mesh point interface MAC plugins. More...

#include <mesh-wifi-interface-mac-plugin.h>

+ Inheritance diagram for ns3::MeshWifiInterfaceMacPlugin:
+ Collaboration diagram for ns3::MeshWifiInterfaceMacPlugin:

Public Member Functions

virtual ~MeshWifiInterfaceMacPlugin ()
 This is for subclasses. More...
 
virtual int64_t AssignStreams (int64_t stream)=0
 Assign a fixed random variable stream number to the random variables used by this model. More...
 
virtual bool Receive (Ptr< Packet > packet, const WifiMacHeader &header)=0
 Process received frame. More...
 
virtual void SetParent (Ptr< MeshWifiInterfaceMac > parent)=0
 Each plugin must be installed on interface to work. More...
 
virtual void UpdateBeacon (MeshWifiBeacon &beacon) const =0
 Update beacon before it will be formed and sent. More...
 
virtual bool UpdateOutcomingFrame (Ptr< Packet > packet, WifiMacHeader &header, Mac48Address from, Mac48Address to)=0
 Update frame before it will be forwarded down. 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...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ns3::SimpleRefCount< MeshWifiInterfaceMacPlugin >
static void Cleanup (void)
 Noop. More...
 

Detailed Description

Common interface for mesh point interface MAC plugins.

Todo:
plugins description

Definition at line 41 of file mesh-wifi-interface-mac-plugin.h.

Constructor & Destructor Documentation

virtual ns3::MeshWifiInterfaceMacPlugin::~MeshWifiInterfaceMacPlugin ( )
inlinevirtual

This is for subclasses.

Definition at line 45 of file mesh-wifi-interface-mac-plugin.h.

Member Function Documentation

virtual int64_t ns3::MeshWifiInterfaceMacPlugin::AssignStreams ( int64_t  stream)
pure virtual

Assign a fixed random variable stream number to the random variables used by this model.

Return the number of streams (possibly zero) that have been assigned.

Parameters
streamfirst stream index to use
Returns
the number of stream indices assigned by this model

Implemented in ns3::dot11s::HwmpProtocolMac, ns3::dot11s::PeerManagementProtocolMac, and ns3::flame::FlameProtocolMac.

virtual bool ns3::MeshWifiInterfaceMacPlugin::Receive ( Ptr< Packet packet,
const WifiMacHeader header 
)
pure virtual

Process received frame.

Returns
false if (and only if) frame should be dropped
Todo:
define when MAC call this

Implemented in ns3::dot11s::HwmpProtocolMac, ns3::dot11s::PeerManagementProtocolMac, and ns3::flame::FlameProtocolMac.

virtual void ns3::MeshWifiInterfaceMacPlugin::SetParent ( Ptr< MeshWifiInterfaceMac parent)
pure virtual

Each plugin must be installed on interface to work.

Implemented in ns3::dot11s::HwmpProtocolMac, ns3::dot11s::PeerManagementProtocolMac, and ns3::flame::FlameProtocolMac.

Referenced by ns3::MeshWifiInterfaceMac::InstallPlugin().

+ Here is the caller graph for this function:

virtual void ns3::MeshWifiInterfaceMacPlugin::UpdateBeacon ( MeshWifiBeacon beacon) const
pure virtual

Update beacon before it will be formed and sent.

Todo:
define when MAC call this

Implemented in ns3::dot11s::HwmpProtocolMac, ns3::dot11s::PeerManagementProtocolMac, and ns3::flame::FlameProtocolMac.

virtual bool ns3::MeshWifiInterfaceMacPlugin::UpdateOutcomingFrame ( Ptr< Packet packet,
WifiMacHeader header,
Mac48Address  from,
Mac48Address  to 
)
pure virtual

Update frame before it will be forwarded down.

Returns
false if (and only if) frame should be dropped
Todo:
define when MAC call this, preconditions & postconditions

Implemented in ns3::dot11s::HwmpProtocolMac, ns3::dot11s::PeerManagementProtocolMac, and ns3::flame::FlameProtocolMac.


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