22 #include "ns3/assert.h"
39 : m_dest (route.m_dest),
40 m_destNetworkMask (route.m_destNetworkMask),
41 m_gateway (route.m_gateway),
42 m_interface (route.m_interface)
48 : m_dest (route->m_dest),
49 m_destNetworkMask (route->m_destNetworkMask),
50 m_gateway (route->m_gateway),
51 m_interface (route->m_interface)
60 m_destNetworkMask (
Ipv4Mask::GetOnes ()),
62 m_interface (interface)
68 m_destNetworkMask (
Ipv4Mask::GetOnes ()),
70 m_interface (interface)
78 m_destNetworkMask (networkMask),
80 m_interface (interface)
82 NS_LOG_FUNCTION (
this << network << networkMask << gateway << interface);
88 m_destNetworkMask (networkMask),
90 m_interface (interface)
225 os <<
"host="<< route.
GetDest () <<
231 os <<
"host="<< route.
GetDest () <<
277 m_origin (route.m_origin),
278 m_group (route.m_group),
279 m_inputInterface (route.m_inputInterface),
280 m_outputInterfaces (route.m_outputInterfaces)
287 m_origin (route->m_origin),
288 m_group (route->m_group),
289 m_inputInterface (route->m_inputInterface),
290 m_outputInterfaces (route->m_outputInterfaces)
298 uint32_t inputInterface,
299 std::vector<uint32_t> outputInterfaces)
301 NS_LOG_FUNCTION (
this << origin << group << inputInterface << &outputInterfaces);
341 "Ipv4MulticastRoutingTableEntry::GetOutputInterface (): index out of bounds");
346 std::vector<uint32_t>
357 uint32_t inputInterface,
358 std::vector<uint32_t> outputInterfaces)
370 ", output interfaces=";
Ipv4Address m_origin
source address
static Ipv4Mask GetOnes(void)
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
uint32_t m_inputInterface
input interface
a class to represent an Ipv4 address mask
Ipv4Address GetOrigin(void) const
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file...
Ipv4Address GetDestNetwork(void) const
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
uint32_t GetInputInterface(void) const
#define NS_LOG_FUNCTION_NOARGS()
Output the name of the function.
uint32_t m_interface
output interface
static Ipv4MulticastRoutingTableEntry CreateMulticastRoute(Ipv4Address origin, Ipv4Address group, uint32_t inputInterface, std::vector< uint32_t > outputInterfaces)
Ipv4Address m_group
destination address
uint32_t GetInterface(void) const
A record of an IPv4 routing table entry for Ipv4GlobalRouting and Ipv4StaticRouting.
bool IsGateway(void) const
static Ipv4RoutingTableEntry CreateHostRouteTo(Ipv4Address dest, Ipv4Address nextHop, uint32_t interface)
static Ipv4RoutingTableEntry CreateNetworkRouteTo(Ipv4Address network, Ipv4Mask networkMask, Ipv4Address nextHop, uint32_t interface)
static Ipv4Mask GetZero(void)
std::vector< uint32_t > m_outputInterfaces
output interfaces
bool IsNetwork(void) const
std::ostream & operator<<(std::ostream &os, const Angles &a)
print a struct Angles to output
Ipv4Address m_gateway
gateway
Ipv4MulticastRoutingTableEntry()
This constructor does nothing.
uint32_t GetOutputInterface(uint32_t n) const
Every class exported by the ns3 library is enclosed in the ns3 namespace.
bool IsEqual(const Ipv4Address &other) const
Comparison operation between two Ipv4Addresses.
Ipv4Mask m_destNetworkMask
destination network mask
static Ipv4RoutingTableEntry CreateDefaultRoute(Ipv4Address nextHop, uint32_t interface)
Ipv4Address GetDest(void) const
static Ipv4Address GetZero(void)
A record of an IPv4 multicast route for Ipv4GlobalRouting and Ipv4StaticRouting.
#define NS_ASSERT_MSG(condition, message)
At runtime, in debugging builds, if this condition is not true, the program prints the message to out...
Ipv4 addresses are stored in host order in this class.
bool IsEqual(Ipv4Mask other) const
Ipv4Address GetGroup(void) const
Ipv4Address GetGateway(void) const
bool operator==(const EventId &a, const EventId &b)
Ipv4Address m_dest
destination address
uint32_t GetNOutputInterfaces(void) const
Ipv4Mask GetDestNetworkMask(void) const
bool IsDefault(void) const
std::vector< uint32_t > GetOutputInterfaces(void) const
Ipv4RoutingTableEntry()
This constructor does nothing.