22#include "ns3/assert.h"
40 : m_dest(route.m_dest),
41 m_destNetworkMask(route.m_destNetworkMask),
42 m_gateway(route.m_gateway),
43 m_interface(route.m_interface)
49 : m_dest(route->m_dest),
50 m_destNetworkMask(route->m_destNetworkMask),
51 m_gateway(route->m_gateway),
52 m_interface(route->m_interface)
61 m_destNetworkMask(
Ipv4Mask::GetOnes()),
63 m_interface(interface)
69 m_destNetworkMask(
Ipv4Mask::GetOnes()),
71 m_interface(interface)
80 m_destNetworkMask(networkMask),
82 m_interface(interface)
84 NS_LOG_FUNCTION(
this << network << networkMask << gateway << interface);
91 m_destNetworkMask(networkMask),
93 m_interface(interface)
259 : m_origin(route.m_origin),
260 m_group(route.m_group),
261 m_inputInterface(route.m_inputInterface),
262 m_outputInterfaces(route.m_outputInterfaces)
269 : m_origin(route->m_origin),
270 m_group(route->m_group),
271 m_inputInterface(route->m_inputInterface),
272 m_outputInterfaces(route->m_outputInterfaces)
281 std::vector<uint32_t> outputInterfaces)
283 NS_LOG_FUNCTION(
this << origin << group << inputInterface << &outputInterfaces);
323 "Ipv4MulticastRoutingTableEntry::GetOutputInterface (): index out of bounds");
339 std::vector<uint32_t> outputInterfaces)
341 NS_LOG_FUNCTION(origin << group << inputInterface << outputInterfaces);
Ipv4 addresses are stored in host order in this class.
static Ipv4Address GetZero()
a class to represent an Ipv4 address mask
static Ipv4Mask GetOnes()
static Ipv4Mask GetZero()
A record of an IPv4 multicast route for Ipv4GlobalRouting and Ipv4StaticRouting.
Ipv4Address m_origin
source address
Ipv4Address GetGroup() const
Ipv4Address GetOrigin() const
std::vector< uint32_t > m_outputInterfaces
output interfaces
std::vector< uint32_t > GetOutputInterfaces() const
Ipv4Address m_group
destination address
uint32_t GetOutputInterface(uint32_t n) const
Ipv4MulticastRoutingTableEntry()
This constructor does nothing.
static Ipv4MulticastRoutingTableEntry CreateMulticastRoute(Ipv4Address origin, Ipv4Address group, uint32_t inputInterface, std::vector< uint32_t > outputInterfaces)
uint32_t GetNOutputInterfaces() const
uint32_t GetInputInterface() const
uint32_t m_inputInterface
input interface
A record of an IPv4 routing table entry for Ipv4GlobalRouting and Ipv4StaticRouting.
Ipv4Address GetDest() const
Ipv4Address GetGateway() const
static Ipv4RoutingTableEntry CreateDefaultRoute(Ipv4Address nextHop, uint32_t interface)
Ipv4Address m_dest
destination address
Ipv4RoutingTableEntry()
This constructor does nothing.
uint32_t m_interface
output interface
Ipv4Mask m_destNetworkMask
destination network mask
Ipv4Address GetDestNetwork() const
uint32_t GetInterface() const
Ipv4Address m_gateway
gateway
static Ipv4RoutingTableEntry CreateNetworkRouteTo(Ipv4Address network, Ipv4Mask networkMask, Ipv4Address nextHop, uint32_t interface)
static Ipv4RoutingTableEntry CreateHostRouteTo(Ipv4Address dest, Ipv4Address nextHop, uint32_t interface)
Ipv4Mask GetDestNetworkMask() const
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
Every class exported by the ns3 library is enclosed in the ns3 namespace.
bool operator==(const EventId &a, const EventId &b)
std::ostream & operator<<(std::ostream &os, const Angles &a)