IPv6 multicast route entry. More...
#include "ipv6-route.h"
Public Member Functions | |
Ipv6MulticastRoute () | |
Constructor. More... | |
virtual | ~Ipv6MulticastRoute () |
Destructor. More... | |
Ipv6Address | GetGroup () const |
Get IPv6 group. More... | |
Ipv6Address | GetOrigin () const |
Get source address. More... | |
std::map< uint32_t, uint32_t > | GetOutputTtlMap () const |
uint32_t | GetParent () const |
Get parent for this route. More... | |
void | SetGroup (const Ipv6Address group) |
Set IPv6 group. More... | |
void | SetOrigin (const Ipv6Address origin) |
Set origin address. More... | |
void | SetOutputTtl (uint32_t oif, uint32_t ttl) |
set output TTL for this route. More... | |
void | SetParent (uint32_t iif) |
Set parent for this route. More... | |
Public Member Functions inherited from ns3::SimpleRefCount< Ipv6MulticastRoute > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o[[maybe_unused]]) |
Assignment operator. More... | |
void | Ref () const |
Increment the reference count. More... | |
void | Unref () const |
Decrement the reference count. More... | |
Static Public Attributes | |
static const uint32_t | MAX_INTERFACES = 16 |
Maximum number of multicast interfaces on a router. More... | |
static const uint32_t | MAX_TTL = 255 |
Maximum Time-To-Live (TTL). More... | |
Private Attributes | |
Ipv6Address | m_group |
IPv6 group. More... | |
Ipv6Address | m_origin |
IPv6 origin (source). More... | |
uint32_t | m_parent |
Source interface. More... | |
std::map< uint32_t, uint32_t > | m_ttls |
TTLs. More... | |
IPv6 multicast route entry.
Definition at line 137 of file ipv6-route.h.
ns3::Ipv6MulticastRoute::Ipv6MulticastRoute | ( | ) |
|
virtual |
Destructor.
Definition at line 98 of file ipv6-route.cc.
Ipv6Address ns3::Ipv6MulticastRoute::GetGroup | ( | ) | const |
Get IPv6 group.
Definition at line 109 of file ipv6-route.cc.
References m_group.
Referenced by ns3::operator<<().
Ipv6Address ns3::Ipv6MulticastRoute::GetOrigin | ( | ) | const |
Get source address.
Definition at line 121 of file ipv6-route.cc.
References m_origin.
Referenced by ns3::operator<<().
std::map< uint32_t, uint32_t > ns3::Ipv6MulticastRoute::GetOutputTtlMap | ( | ) | const |
Definition at line 157 of file ipv6-route.cc.
References m_ttls.
uint32_t ns3::Ipv6MulticastRoute::GetParent | ( | ) | const |
Get parent for this route.
Definition at line 133 of file ipv6-route.cc.
References m_parent.
Referenced by ns3::operator<<().
void ns3::Ipv6MulticastRoute::SetGroup | ( | const Ipv6Address | group | ) |
Set IPv6 group.
group | Ipv6Address of the multicast group |
Definition at line 103 of file ipv6-route.cc.
References m_group.
void ns3::Ipv6MulticastRoute::SetOrigin | ( | const Ipv6Address | origin | ) |
Set origin address.
origin | Ipv6Address of the origin address |
Definition at line 115 of file ipv6-route.cc.
References m_origin.
void ns3::Ipv6MulticastRoute::SetOutputTtl | ( | uint32_t | oif, |
uint32_t | ttl | ||
) |
set output TTL for this route.
oif | Outgoing interface index |
ttl | time-to-live for this route |
Definition at line 139 of file ipv6-route.cc.
void ns3::Ipv6MulticastRoute::SetParent | ( | uint32_t | iif | ) |
Set parent for this route.
iif | Parent (input interface) for this route |
Definition at line 127 of file ipv6-route.cc.
References m_parent.
|
private |
|
private |
IPv6 origin (source).
Definition at line 217 of file ipv6-route.h.
Referenced by GetOrigin(), and SetOrigin().
|
private |
Source interface.
Definition at line 222 of file ipv6-route.h.
Referenced by GetParent(), and SetParent().
|
private |
TTLs.
Definition at line 227 of file ipv6-route.h.
Referenced by Ipv6MulticastRoute(), GetOutputTtlMap(), and SetOutputTtl().
|
static |
Maximum number of multicast interfaces on a router.
Definition at line 143 of file ipv6-route.h.
|
static |
Maximum Time-To-Live (TTL).
Definition at line 148 of file ipv6-route.h.
Referenced by ns3::Ipv6StaticRouting::LookupStatic(), and SetOutputTtl().