INET Framework for OMNeT++/OMNEST
inet::Ipv6AddressType Class Reference

#include <Ipv6AddressType.h>

Inheritance diagram for inet::Ipv6AddressType:
inet::IL3AddressType

Public Member Functions

 Ipv6AddressType ()
 
virtual ~Ipv6AddressType ()
 
virtual int getAddressBitLength () const override
 
virtual int getMaxPrefixLength () const override
 
virtual L3Address getUnspecifiedAddress () const override
 
virtual L3Address getBroadcastAddress () const override
 
virtual L3Address getLinkLocalManetRoutersMulticastAddress () const override
 
virtual L3Address getLinkLocalRIPRoutersMulticastAddress () const override
 
virtual const ProtocolgetNetworkProtocol () const override
 
virtual L3Address getLinkLocalAddress (const NetworkInterface *ie) const override
 Returns the first valid link-local address of the interface, or UNSPECIFIED_ADDRESS if there's none. More...
 
- Public Member Functions inherited from inet::IL3AddressType
 IL3AddressType ()
 
virtual ~IL3AddressType ()
 
int getAddressByteLength () const
 

Static Public Attributes

static Ipv6AddressType INSTANCE
 
static const Ipv6Address ALL_RIP_ROUTERS_MCAST
 

Constructor & Destructor Documentation

◆ Ipv6AddressType()

inet::Ipv6AddressType::Ipv6AddressType ( )
inline
24 {}

◆ ~Ipv6AddressType()

virtual inet::Ipv6AddressType::~Ipv6AddressType ( )
inlinevirtual
25 {}

Member Function Documentation

◆ getAddressBitLength()

virtual int inet::Ipv6AddressType::getAddressBitLength ( ) const
inlineoverridevirtual

Implements inet::IL3AddressType.

27 { return 128; }

◆ getBroadcastAddress()

virtual L3Address inet::Ipv6AddressType::getBroadcastAddress ( ) const
inlineoverridevirtual

Implements inet::IL3AddressType.

30 { return Ipv6Address::ALL_NODES_1; }

◆ getLinkLocalAddress()

L3Address inet::Ipv6AddressType::getLinkLocalAddress ( const NetworkInterface ie) const
overridevirtual

Returns the first valid link-local address of the interface, or UNSPECIFIED_ADDRESS if there's none.

Implements inet::IL3AddressType.

21 {
22 #ifdef INET_WITH_IPv6
23  if (auto ipv6Data = ie->findProtocolData<Ipv6InterfaceData>())
24  return ipv6Data->getLinkLocalAddress();
25 #endif // ifdef INET_WITH_IPv6
27 }

◆ getLinkLocalManetRoutersMulticastAddress()

virtual L3Address inet::Ipv6AddressType::getLinkLocalManetRoutersMulticastAddress ( ) const
inlineoverridevirtual

◆ getLinkLocalRIPRoutersMulticastAddress()

virtual L3Address inet::Ipv6AddressType::getLinkLocalRIPRoutersMulticastAddress ( ) const
inlineoverridevirtual

Implements inet::IL3AddressType.

32 { return ALL_RIP_ROUTERS_MCAST; }

◆ getMaxPrefixLength()

virtual int inet::Ipv6AddressType::getMaxPrefixLength ( ) const
inlineoverridevirtual

Implements inet::IL3AddressType.

28 { return 128; }

◆ getNetworkProtocol()

virtual const Protocol* inet::Ipv6AddressType::getNetworkProtocol ( ) const
inlineoverridevirtual

Implements inet::IL3AddressType.

33 { return &Protocol::ipv6; }

◆ getUnspecifiedAddress()

virtual L3Address inet::Ipv6AddressType::getUnspecifiedAddress ( ) const
inlineoverridevirtual

Member Data Documentation

◆ ALL_RIP_ROUTERS_MCAST

const Ipv6Address inet::Ipv6AddressType::ALL_RIP_ROUTERS_MCAST
static

◆ INSTANCE

Ipv6AddressType inet::Ipv6AddressType::INSTANCE
static

The documentation for this class was generated from the following files:
inet::Protocol::ipv6
static const Protocol ipv6
Definition: Protocol.h:94
inet::Ipv6Address::ALL_NODES_1
static const Ipv6Address ALL_NODES_1
All-nodes multicast address, scope 1 (interface-local)
Definition: Ipv6Address.h:60
inet::Ipv6Address::UNSPECIFIED_ADDRESS
static const Ipv6Address UNSPECIFIED_ADDRESS
The unspecified address.
Definition: Ipv6Address.h:54
inet::Ipv6AddressType::ALL_RIP_ROUTERS_MCAST
static const Ipv6Address ALL_RIP_ROUTERS_MCAST
Definition: Ipv6AddressType.h:21
inet::Ipv6Address::LL_MANET_ROUTERS
static const Ipv6Address LL_MANET_ROUTERS
Link-local MANET routers multicast address.
Definition: Ipv6Address.h:81