A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::OlsrHelper Class Reference

Helper class that adds OLSR routing to nodes. More...

#include <olsr-helper.h>

+ Inheritance diagram for ns3::OlsrHelper:

Public Member Functions

 OlsrHelper ()
 
 OlsrHelper (const OlsrHelper &)
 Construct an OlsrHelper from another previously initialized instance (Copy Constructor).
 
int64_t AssignStreams (NodeContainer c, int64_t stream)
 
OlsrHelperCopy (void) const
 
virtual Ptr< Ipv4RoutingProtocolCreate (Ptr< Node > node) const
 
void ExcludeInterface (Ptr< Node > node, uint32_t interface)
 
void Set (std::string name, const AttributeValue &value)
 
- Public Member Functions inherited from ns3::Ipv4RoutingHelper
void PrintRoutingTableAllAt (Time printTime, Ptr< OutputStreamWrapper > stream) const
 prints the routing tables of all nodes at a particular time. More...
 
void PrintRoutingTableAllEvery (Time printInterval, Ptr< OutputStreamWrapper > stream) const
 prints the routing tables of all nodes at regular intervals specified by user. More...
 
void PrintRoutingTableAt (Time printTime, Ptr< Node > node, Ptr< OutputStreamWrapper > stream) const
 prints the routing tables of a node at a particular time. More...
 
void PrintRoutingTableEvery (Time printInterval, Ptr< Node > node, Ptr< OutputStreamWrapper > stream) const
 prints the routing tables of a node at regular intervals specified by user. More...
 

Private Member Functions

OlsrHelperoperator= (const OlsrHelper &o)
 Assignment operator declared private and not implemented to disallow assignment and prevent the compiler from happily inserting its own. More...
 

Private Attributes

ObjectFactory m_agentFactory
 
std::map< Ptr< Node >
, std::set< uint32_t > > 
m_interfaceExclusions
 

Detailed Description

Helper class that adds OLSR routing to nodes.

This class is expected to be used in conjunction with ns3::InternetStackHelper::SetRoutingHelper

Definition at line 38 of file olsr-helper.h.

Constructor & Destructor Documentation

ns3::OlsrHelper::OlsrHelper ( )

Create an OlsrHelper that makes life easier for people who want to install OLSR routing to nodes.

Definition at line 29 of file olsr-helper.cc.

References ns3::ObjectFactory::SetTypeId().

Referenced by Copy().

Member Function Documentation

int64_t ns3::OlsrHelper::AssignStreams ( NodeContainer  c,
int64_t  stream 
)

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. The Install() method of the InternetStackHelper should have previously been called by the user.

Parameters
streamfirst stream index to use
cNodeContainer of the set of nodes for which the OlsrRoutingProtocol should be modified to use a fixed stream
Returns
the number of stream indices assigned by this helper

Definition at line 87 of file olsr-helper.cc.

References ns3::NodeContainer::Begin(), ns3::NodeContainer::End(), ns3::Object::GetObject(), and NS_ASSERT_MSG.

Referenced by ns3::olsr::Bug780Test::CreateNodes(), ns3::olsr::HelloRegressionTest::CreateNodes(), and ns3::olsr::TcRegressionTest::CreateNodes().

OlsrHelper * ns3::OlsrHelper::Copy ( void  ) const
virtual
Returns
pointer to clone of this OlsrHelper

This method is mainly for internal use by the other helpers; clients are expected to free the dynamic memory allocated by this method

Implements ns3::Ipv4RoutingHelper.

Definition at line 41 of file olsr-helper.cc.

References OlsrHelper().

Ptr< Ipv4RoutingProtocol > ns3::OlsrHelper::Create ( Ptr< Node node) const
virtual
Parameters
nodethe node on which the routing protocol will run
Returns
a newly-created routing protocol

This method will be called by ns3::InternetStackHelper::Install

Implements ns3::Ipv4RoutingHelper.

Definition at line 65 of file olsr-helper.cc.

References ns3::Object::AggregateObject(), and ns3::ObjectFactory::Create().

void ns3::OlsrHelper::ExcludeInterface ( Ptr< Node node,
uint32_t  interface 
)
Parameters
nodethe node for which an exception is to be defined
interfacean interface of node on which OLSR is not to be installed

This method allows the user to specify an interface on which OLSR is not to be installed on

Definition at line 47 of file olsr-helper.cc.

OlsrHelper& ns3::OlsrHelper::operator= ( const OlsrHelper o)
private

Assignment operator declared private and not implemented to disallow assignment and prevent the compiler from happily inserting its own.

void ns3::OlsrHelper::Set ( std::string  name,
const AttributeValue value 
)
Parameters
namethe name of the attribute to set
valuethe value of the attribute to set.

This method controls the attributes of ns3::olsr::RoutingProtocol

Definition at line 81 of file olsr-helper.cc.

References ns3::ObjectFactory::Set().


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