21 #ifndef IPV6_ROUTING_TABLE_ENTRY_H
22 #define IPV6_ROUTING_TABLE_ENTRY_H
28 #include "ns3/ipv6-address.h"
void SetPrefixToUse(Ipv6Address prefix)
Set the prefix to use.
Ipv6Address GetPrefixToUse() const
Get the prefix to use (for multihomed link).
Ipv6Prefix GetDestNetworkPrefix() const
Get the destination prefix.
static Ipv6RoutingTableEntry CreateNetworkRouteTo(Ipv6Address network, Ipv6Prefix networkPrefix, Ipv6Address nextHop, uint32_t interface)
Create a route to a network.
A record of an IPv6 multicast route.
Ipv6RoutingTableEntry()
Constructor.
uint32_t GetInputInterface() const
Get the input interface address.
static Ipv6RoutingTableEntry CreateHostRouteTo(Ipv6Address dest, Ipv6Address nextHop, uint32_t interface, Ipv6Address prefixToUse=Ipv6Address())
Create a route to a host.
uint32_t GetNOutputInterfaces() const
Get the number of output interfaces of this route.
Ipv6MulticastRoutingTableEntry()
Constructor.
static Ipv6MulticastRoutingTableEntry CreateMulticastRoute(Ipv6Address origin, Ipv6Address group, uint32_t inputInterface, std::vector< uint32_t > outputInterfaces)
Create a multicast route.
uint32_t m_inputInterface
The input interface.
Ipv6Address m_prefixToUse
Prefix to use.
Ipv6Address GetDestNetwork() const
Get the destination network.
A record of an IPv6 route.
Ipv6Address m_group
The IPv6 address of the group.
Ipv6Prefix m_destNetworkPrefix
IPv6 prefix of the destination.
Ipv6Address GetOrigin() const
Get the source of this route.
bool IsHost() const
Is the route entry correspond to a host ?
std::ostream & operator<<(std::ostream &os, const Angles &a)
print a struct Angles to output
uint32_t GetOutputInterface(uint32_t n) const
Get a specified output interface.
static Ipv6RoutingTableEntry CreateDefaultRoute(Ipv6Address nextHop, uint32_t interface)
Create a default route.
Ipv6Address m_origin
The IPv6 address of the source.
std::vector< uint32_t > GetOutputInterfaces() const
Get all of the output interfaces of this route.
bool IsDefault() const
Is it the default route ?
Ipv6Address m_gateway
IPv6 address of the gateway.
Ipv6Address GetGateway() const
Get the gateway.
uint32_t GetInterface() const
Get the interface index.
Describes an IPv6 address.
Ipv6Address GetGroup() const
Get the group.
uint32_t m_interface
The interface index.
Ipv6Address GetDest() const
Get the destination.
~Ipv6RoutingTableEntry()
Destructor.
bool IsNetwork() const
Is the route entry correspond to a network ?
Describes an IPv6 prefix.
bool IsGateway() const
Is it the gateway ?
std::vector< uint32_t > m_outputInterfaces
The output interfaces.
Ipv6Address m_dest
IPv6 address of the destination.