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

IPv6 multicast route entry. More...

#include <ipv6-route.h>

+ Inheritance diagram for ns3::Ipv6MulticastRoute:
+ Collaboration diagram for ns3::Ipv6MulticastRoute:

Public Member Functions

 Ipv6MulticastRoute ()
 Constructor.
virtual ~Ipv6MulticastRoute ()
 Destructor.
Ipv6Address GetGroup (void) const
 Get IPv6 group.
Ipv6Address GetOrigin (void) const
 Get source address.
uint32_t GetOutputTtl (uint32_t oif) NS_DEPRECATED
 Get output TTL for this route.
std::map< uint32_t, uint32_t > GetOutputTtlMap () const
uint32_t GetParent (void) const
 Get parent for this route.
void SetGroup (const Ipv6Address group)
 Set IPv6 group.
void SetOrigin (const Ipv6Address origin)
 Set origin address.
void SetOutputTtl (uint32_t oif, uint32_t ttl)
 set output TTL for this route.
void SetParent (uint32_t iif)
 Set parent for this route.
- Public Member Functions inherited from ns3::SimpleRefCount< Ipv6MulticastRoute >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const

Static Public Attributes

static const uint32_t MAX_INTERFACES = 16
 Maximum number of multicast interfaces on a router.
static const uint32_t MAX_TTL = 255
 Maximum Time-To-Live (TTL).

Private Attributes

Ipv6Address m_group
 IPv6 group.
Ipv6Address m_origin
 IPv6 origin (source).
uint32_t m_parent
 Source interface.
std::map< uint32_t, uint32_t > m_ttls
 TTLs.

Additional Inherited Members

- Static Public Member Functions inherited from ns3::SimpleRefCount< Ipv6MulticastRoute >
static void Cleanup (void)

Detailed Description

IPv6 multicast route entry.

Definition at line 133 of file ipv6-route.h.

Constructor & Destructor Documentation

ns3::Ipv6MulticastRoute::Ipv6MulticastRoute ( )

Constructor.

Definition at line 83 of file ipv6-route.cc.

References m_ttls.

ns3::Ipv6MulticastRoute::~Ipv6MulticastRoute ( )
virtual

Destructor.

Definition at line 88 of file ipv6-route.cc.

Member Function Documentation

Ipv6Address ns3::Ipv6MulticastRoute::GetGroup ( void  ) const

Get IPv6 group.

Returns
Ipv6Address of the multicast group

Definition at line 97 of file ipv6-route.cc.

References m_group.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

Ipv6Address ns3::Ipv6MulticastRoute::GetOrigin ( void  ) const

Get source address.

Returns
Ipv6Address of the origin address

Definition at line 107 of file ipv6-route.cc.

References m_origin.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

uint32_t ns3::Ipv6MulticastRoute::GetOutputTtl ( uint32_t  oif)

Get output TTL for this route.

Parameters
oifoutgoing interface
Returns
TTL for this route

Definition at line 140 of file ipv6-route.cc.

References m_ttls, and MAX_TTL.

std::map< uint32_t, uint32_t > ns3::Ipv6MulticastRoute::GetOutputTtlMap ( ) const
Returns
map of output interface Ids and TTLs for this route

Definition at line 149 of file ipv6-route.cc.

References m_ttls.

uint32_t ns3::Ipv6MulticastRoute::GetParent ( void  ) const

Get parent for this route.

Returns
Parent (input interface) for this route

Definition at line 117 of file ipv6-route.cc.

References m_parent.

Referenced by ns3::operator<<().

+ Here is the caller graph for this function:

void ns3::Ipv6MulticastRoute::SetGroup ( const Ipv6Address  group)

Set IPv6 group.

Parameters
groupIpv6Address of the multicast group

Definition at line 92 of file ipv6-route.cc.

References visualizer.higcontainer::group, and m_group.

void ns3::Ipv6MulticastRoute::SetOrigin ( const Ipv6Address  origin)

Set origin address.

Parameters
originIpv6Address of the origin address

Definition at line 102 of file ipv6-route.cc.

References m_origin.

void ns3::Ipv6MulticastRoute::SetOutputTtl ( uint32_t  oif,
uint32_t  ttl 
)

set output TTL for this route.

Parameters
oifOutgoing interface index
ttltime-to-live for this route

Definition at line 122 of file ipv6-route.cc.

References m_ttls, and MAX_TTL.

void ns3::Ipv6MulticastRoute::SetParent ( uint32_t  iif)

Set parent for this route.

Parameters
iifParent (input interface) for this route

Definition at line 112 of file ipv6-route.cc.

References m_parent.

Member Data Documentation

Ipv6Address ns3::Ipv6MulticastRoute::m_group
private

IPv6 group.

Definition at line 215 of file ipv6-route.h.

Referenced by GetGroup(), and SetGroup().

Ipv6Address ns3::Ipv6MulticastRoute::m_origin
private

IPv6 origin (source).

Definition at line 220 of file ipv6-route.h.

Referenced by GetOrigin(), and SetOrigin().

uint32_t ns3::Ipv6MulticastRoute::m_parent
private

Source interface.

Definition at line 225 of file ipv6-route.h.

Referenced by GetParent(), and SetParent().

std::map<uint32_t, uint32_t> ns3::Ipv6MulticastRoute::m_ttls
private

TTLs.

Definition at line 230 of file ipv6-route.h.

Referenced by GetOutputTtl(), GetOutputTtlMap(), Ipv6MulticastRoute(), and SetOutputTtl().

const uint32_t ns3::Ipv6MulticastRoute::MAX_INTERFACES = 16
static

Maximum number of multicast interfaces on a router.

Definition at line 139 of file ipv6-route.h.

const uint32_t ns3::Ipv6MulticastRoute::MAX_TTL = 255
static

Maximum Time-To-Live (TTL).

Definition at line 144 of file ipv6-route.h.

Referenced by GetOutputTtl(), ns3::Ipv6StaticRouting::LookupStatic(), and SetOutputTtl().


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