A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
olsr-helper.h
Go to the documentation of this file.
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2008 INRIA
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
19  */
20 #ifndef OLSR_HELPER_H
21 #define OLSR_HELPER_H
22 
23 #include "ns3/object-factory.h"
24 #include "ns3/node.h"
25 #include "ns3/node-container.h"
26 #include "ns3/ipv4-routing-helper.h"
27 #include <map>
28 #include <set>
29 
30 namespace ns3 {
31 
39 {
40 public:
45  OlsrHelper ();
46 
51  OlsrHelper (const OlsrHelper &);
52 
60  OlsrHelper* Copy (void) const;
61 
68  void ExcludeInterface (Ptr<Node> node, uint32_t interface);
69 
76  virtual Ptr<Ipv4RoutingProtocol> Create (Ptr<Node> node) const;
77 
84  void Set (std::string name, const AttributeValue &value);
85 
97  int64_t AssignStreams (NodeContainer c, int64_t stream);
98 
99 private:
105  OlsrHelper &operator = (const OlsrHelper &o);
107 
108  std::map< Ptr<Node>, std::set<uint32_t> > m_interfaceExclusions;
109 };
110 
111 } // namespace ns3
112 
113 #endif /* OLSR_HELPER_H */
Hold a value for an Attribute.
Definition: attribute.h:56
virtual Ptr< Ipv4RoutingProtocol > Create(Ptr< Node > node) const
Definition: olsr-helper.cc:65
void Set(std::string name, const AttributeValue &value)
Definition: olsr-helper.cc:81
int64_t AssignStreams(NodeContainer c, int64_t stream)
Assign a fixed random variable stream number to the random variables used by this model...
Definition: olsr-helper.cc:87
Helper class that adds OLSR routing to nodes.
Definition: olsr-helper.h:38
std::map< Ptr< Node >, std::set< uint32_t > > m_interfaceExclusions
Definition: olsr-helper.h:108
ObjectFactory m_agentFactory
Definition: olsr-helper.h:106
OlsrHelper * Copy(void) const
Definition: olsr-helper.cc:41
a factory to create ns3::Ipv4RoutingProtocol objects
keep track of a set of node pointers.
instantiate subclasses of ns3::Object.
OlsrHelper & operator=(const OlsrHelper &o)
Assignment operator declared private and not implemented to disallow assignment and prevent the compi...
OlsrHelper()
Create an OlsrHelper that makes life easier for people who want to install OLSR routing to nodes...
Definition: olsr-helper.cc:29
void ExcludeInterface(Ptr< Node > node, uint32_t interface)
Definition: olsr-helper.cc:47