11#include "ns3/ipv4-list-routing.h"
12#include "ns3/node-list.h"
25 : m_factory(
o.m_factory)
52 rip->SetInterfaceExclusions(
it->second);
65 node->AggregateObject(rip);
80 for (
auto i =
c.Begin();
i !=
c.End(); ++
i)
125 rip->AddDefaultRouteTo(nextHop, interface);
140 listRip->AddDefaultRouteTo(nextHop, interface);
154 std::set<uint32_t> interfaces;
155 interfaces.insert(interface);
161 it->second.insert(interface);
Hold a value for an Attribute.
Ipv4 addresses are stored in host order in this class.
Access to the IPv4 forwarding table, interfaces, and configuration.
keep track of a set of node pointers.
Ptr< Object > Create() const
Create an Object instance of the configured TypeId.
void Set(const std::string &name, const AttributeValue &value, Args &&... args)
Set an attribute to be set during construction.
void SetTypeId(TypeId tid)
Set the TypeId of the Objects to be created by this factory.
Smart pointer class similar to boost::intrusive_ptr.
Helper class that adds RIP routing to nodes.
std::map< Ptr< Node >, std::map< uint32_t, uint8_t > > m_interfaceMetrics
Interface Metric set.
Ptr< Ipv4RoutingProtocol > Create(Ptr< Node > node) const override
RipHelper * Copy() const override
void Set(std::string name, const AttributeValue &value)
void ExcludeInterface(Ptr< Node > node, uint32_t interface)
Exclude an interface from RIP protocol.
void SetDefaultRouter(Ptr< Node > node, Ipv4Address nextHop, uint32_t interface)
Install a default route in the node.
int64_t AssignStreams(NodeContainer c, int64_t stream)
Assign a fixed random variable stream number to the random variables used by this model.
void SetInterfaceMetric(Ptr< Node > node, uint32_t interface, uint8_t metric)
Set a metric for an interface.
ObjectFactory m_factory
Object Factory.
std::map< Ptr< Node >, std::set< uint32_t > > m_interfaceExclusions
Interface Exclusion set.
RIP Routing Protocol, defined in RFC 2453.
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
Ptr< T > Create(Ts &&... args)
Create class instances by constructors with varying numbers of arguments and return them by Ptr.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
static unsigned int value(char c)