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

A record of an IPv4 multicast route for Ipv4GlobalRouting and Ipv4StaticRouting. More...

#include <ipv4-routing-table-entry.h>

+ Collaboration diagram for ns3::Ipv4MulticastRoutingTableEntry:

Public Member Functions

 Ipv4MulticastRoutingTableEntry ()
 This constructor does nothing. More...
 
 Ipv4MulticastRoutingTableEntry (Ipv4MulticastRoutingTableEntry const &route)
 Copy Constructor. More...
 
 Ipv4MulticastRoutingTableEntry (Ipv4MulticastRoutingTableEntry const *route)
 Copy Constructor. More...
 
Ipv4Address GetGroup (void) const
 
uint32_t GetInputInterface (void) const
 
uint32_t GetNOutputInterfaces (void) const
 
Ipv4Address GetOrigin (void) const
 
uint32_t GetOutputInterface (uint32_t n) const
 
std::vector< uint32_t > GetOutputInterfaces (void) const
 

Static Public Member Functions

static
Ipv4MulticastRoutingTableEntry 
CreateMulticastRoute (Ipv4Address origin, Ipv4Address group, uint32_t inputInterface, std::vector< uint32_t > outputInterfaces)
 

Private Member Functions

 Ipv4MulticastRoutingTableEntry (Ipv4Address origin, Ipv4Address group, uint32_t inputInterface, std::vector< uint32_t > outputInterfaces)
 Constructor. More...
 

Private Attributes

Ipv4Address m_group
 destination address More...
 
uint32_t m_inputInterface
 input interface More...
 
Ipv4Address m_origin
 source address More...
 
std::vector< uint32_t > m_outputInterfaces
 output interfaces More...
 

Detailed Description

A record of an IPv4 multicast route for Ipv4GlobalRouting and Ipv4StaticRouting.

Definition at line 195 of file ipv4-routing-table-entry.h.

Constructor & Destructor Documentation

ns3::Ipv4MulticastRoutingTableEntry::Ipv4MulticastRoutingTableEntry ( )

This constructor does nothing.

Definition at line 262 of file ipv4-routing-table-entry.cc.

References NS_LOG_FUNCTION.

Referenced by CreateMulticastRoute().

+ Here is the caller graph for this function:

ns3::Ipv4MulticastRoutingTableEntry::Ipv4MulticastRoutingTableEntry ( Ipv4MulticastRoutingTableEntry const &  route)

Copy Constructor.

Parameters
routeThe route to copy

Definition at line 267 of file ipv4-routing-table-entry.cc.

References NS_LOG_FUNCTION.

ns3::Ipv4MulticastRoutingTableEntry::Ipv4MulticastRoutingTableEntry ( Ipv4MulticastRoutingTableEntry const *  route)

Copy Constructor.

Parameters
routeThe route to copy

Definition at line 277 of file ipv4-routing-table-entry.cc.

References NS_LOG_FUNCTION.

ns3::Ipv4MulticastRoutingTableEntry::Ipv4MulticastRoutingTableEntry ( Ipv4Address  origin,
Ipv4Address  group,
uint32_t  inputInterface,
std::vector< uint32_t >  outputInterfaces 
)
private

Constructor.

Parameters
originsource address
groupdestination address
inputInterfaceinput interface
outputInterfacesoutput interfaces

Definition at line 287 of file ipv4-routing-table-entry.cc.

References visualizer.higcontainer::group, m_group, m_inputInterface, m_origin, m_outputInterfaces, and NS_LOG_FUNCTION.

Member Function Documentation

Ipv4MulticastRoutingTableEntry ns3::Ipv4MulticastRoutingTableEntry::CreateMulticastRoute ( Ipv4Address  origin,
Ipv4Address  group,
uint32_t  inputInterface,
std::vector< uint32_t >  outputInterfaces 
)
static
Returns
Ipv4MulticastRoutingTableEntry corresponding to the input parameters.
Parameters
originSource address for the multicast route
groupGroup destination address for the multicast route
inputInterfaceInput interface that multicast datagram must be received on
outputInterfacesvector of output interfaces to copy and forward the datagram to

Definition at line 346 of file ipv4-routing-table-entry.cc.

References Ipv4MulticastRoutingTableEntry(), and NS_LOG_FUNCTION_NOARGS.

Referenced by ns3::Ipv4StaticRouting::AddMulticastRoute().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Ipv4Address ns3::Ipv4MulticastRoutingTableEntry::GetGroup ( void  ) const
Returns
The IPv4 address of the multicast group of this route

Definition at line 308 of file ipv4-routing-table-entry.cc.

References m_group, and NS_LOG_FUNCTION.

Referenced by ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), and ns3::Ipv4StaticRouting::RemoveMulticastRoute().

+ Here is the caller graph for this function:

uint32_t ns3::Ipv4MulticastRoutingTableEntry::GetInputInterface ( void  ) const
Returns
The IPv4 address of the input interface of this route

Definition at line 315 of file ipv4-routing-table-entry.cc.

References m_inputInterface, and NS_LOG_FUNCTION.

Referenced by ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), and ns3::Ipv4StaticRouting::RemoveMulticastRoute().

+ Here is the caller graph for this function:

uint32_t ns3::Ipv4MulticastRoutingTableEntry::GetNOutputInterfaces ( void  ) const
Returns
The number of output interfaces of this route

Definition at line 322 of file ipv4-routing-table-entry.cc.

References m_outputInterfaces, and NS_LOG_FUNCTION.

Referenced by ns3::Ipv4StaticRouting::LookupStatic(), and ns3::operator<<().

+ Here is the caller graph for this function:

Ipv4Address ns3::Ipv4MulticastRoutingTableEntry::GetOrigin ( void  ) const
Returns
The IPv4 address of the source of this route

Definition at line 301 of file ipv4-routing-table-entry.cc.

References m_origin, and NS_LOG_FUNCTION.

Referenced by ns3::Ipv4StaticRouting::LookupStatic(), ns3::operator<<(), and ns3::Ipv4StaticRouting::RemoveMulticastRoute().

+ Here is the caller graph for this function:

uint32_t ns3::Ipv4MulticastRoutingTableEntry::GetOutputInterface ( uint32_t  n) const
Parameters
ninterface index
Returns
A specified output interface.

Definition at line 329 of file ipv4-routing-table-entry.cc.

References m_outputInterfaces, NS_ASSERT_MSG, and NS_LOG_FUNCTION.

Referenced by ns3::Ipv4StaticRouting::LookupStatic(), and ns3::operator<<().

+ Here is the caller graph for this function:

std::vector< uint32_t > ns3::Ipv4MulticastRoutingTableEntry::GetOutputInterfaces ( void  ) const
Returns
A vector of all of the output interfaces of this route.

Definition at line 339 of file ipv4-routing-table-entry.cc.

References m_outputInterfaces, and NS_LOG_FUNCTION.

Member Data Documentation

Ipv4Address ns3::Ipv4MulticastRoutingTableEntry::m_group
private

destination address

Definition at line 260 of file ipv4-routing-table-entry.h.

Referenced by GetGroup(), and Ipv4MulticastRoutingTableEntry().

uint32_t ns3::Ipv4MulticastRoutingTableEntry::m_inputInterface
private

input interface

Definition at line 261 of file ipv4-routing-table-entry.h.

Referenced by GetInputInterface(), and Ipv4MulticastRoutingTableEntry().

Ipv4Address ns3::Ipv4MulticastRoutingTableEntry::m_origin
private

source address

Definition at line 259 of file ipv4-routing-table-entry.h.

Referenced by GetOrigin(), and Ipv4MulticastRoutingTableEntry().

std::vector<uint32_t> ns3::Ipv4MulticastRoutingTableEntry::m_outputInterfaces
private

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