IPv6 multicast route entry. More...
#include "ipv6-route.h"
Public Member Functions | |
Ipv6MulticastRoute () | |
Constructor. | |
virtual | ~Ipv6MulticastRoute () |
Destructor. | |
Ipv6Address | GetGroup () const |
Get IPv6 group. | |
Ipv6Address | GetOrigin () const |
Get source address. | |
std::map< uint32_t, uint32_t > | GetOutputTtlMap () const |
uint32_t | GetParent () 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 () | |
Default constructor. | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. | |
void | Ref () const |
Increment the reference count. | |
void | Unref () const |
Decrement the reference count. | |
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. | |
IPv6 multicast route entry.
Definition at line 126 of file ipv6-route.h.
ns3::Ipv6MulticastRoute::Ipv6MulticastRoute | ( | ) |
|
virtual |
Destructor.
Definition at line 87 of file ipv6-route.cc.
Ipv6Address ns3::Ipv6MulticastRoute::GetGroup | ( | ) | const |
Get IPv6 group.
Definition at line 98 of file ipv6-route.cc.
References m_group.
Referenced by ns3::operator<<().
Ipv6Address ns3::Ipv6MulticastRoute::GetOrigin | ( | ) | const |
Get source address.
Definition at line 110 of file ipv6-route.cc.
References m_origin.
Referenced by ns3::operator<<().
Definition at line 146 of file ipv6-route.cc.
References m_ttls.
uint32_t ns3::Ipv6MulticastRoute::GetParent | ( | ) | const |
Get parent for this route.
Definition at line 122 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 92 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 104 of file ipv6-route.cc.
References m_origin.
set output TTL for this route.
oif | Outgoing interface index |
ttl | time-to-live for this route |
Definition at line 128 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 116 of file ipv6-route.cc.
References m_parent.
|
private |
|
private |
IPv6 origin (source).
Definition at line 206 of file ipv6-route.h.
Referenced by GetOrigin(), and SetOrigin().
|
private |
Source interface.
Definition at line 211 of file ipv6-route.h.
Referenced by GetParent(), and SetParent().
TTLs.
Definition at line 216 of file ipv6-route.h.
Referenced by Ipv6MulticastRoute(), GetOutputTtlMap(), and SetOutputTtl().
|
static |
Maximum number of multicast interfaces on a router.
Definition at line 132 of file ipv6-route.h.
|
static |
Maximum Time-To-Live (TTL).
Definition at line 137 of file ipv6-route.h.
Referenced by ns3::Ipv6StaticRouting::LookupStatic(), and SetOutputTtl().