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

Class generated from inet/networklayer/ipv6/Ipv6ExtensionHeaders.msg:54 by opp_msgtool. More...

#include <Ipv6ExtensionHeaders_m.h>

Inheritance diagram for inet::Ipv6RoutingHeader:
inet::Ipv6ExtensionHeader

Public Member Functions

 Ipv6RoutingHeader ()
 
 Ipv6RoutingHeader (const Ipv6RoutingHeader &other)
 
virtual ~Ipv6RoutingHeader ()
 
Ipv6RoutingHeaderoperator= (const Ipv6RoutingHeader &other)
 
virtual Ipv6RoutingHeaderdup () const override
 
virtual void parsimPack (omnetpp::cCommBuffer *b) const override
 
virtual void parsimUnpack (omnetpp::cCommBuffer *b) override
 
virtual uint8_t getRoutingType () const
 
virtual void setRoutingType (uint8_t routingType)
 
virtual uint8_t getSegmentsLeft () const
 
virtual void setSegmentsLeft (uint8_t segmentsLeft)
 
virtual void setAddressArraySize (size_t size)
 
virtual size_t getAddressArraySize () const
 
virtual const Ipv6AddressgetAddress (size_t k) const
 
virtual Ipv6AddressgetAddressForUpdate (size_t k)
 
virtual void setAddress (size_t k, const Ipv6Address &address)
 
virtual void insertAddress (size_t k, const Ipv6Address &address)
 
void insertAddress (const Ipv6Address &address)
 
virtual void appendAddress (const Ipv6Address &address)
 
virtual void eraseAddress (size_t k)
 
- Public Member Functions inherited from inet::Ipv6ExtensionHeader
 Ipv6ExtensionHeader ()
 
 Ipv6ExtensionHeader (const Ipv6ExtensionHeader &other)
 
virtual ~Ipv6ExtensionHeader ()
 
Ipv6ExtensionHeaderoperator= (const Ipv6ExtensionHeader &other)
 
virtual uint8_t getExtensionType () const
 
virtual void setExtensionType (uint8_t extensionType)
 
virtual B getByteLength () const
 
virtual void setByteLength (B byteLength)
 
int getOrder () const
 

Protected Member Functions

bool operator== (const Ipv6RoutingHeader &)=delete
 
- Protected Member Functions inherited from inet::Ipv6ExtensionHeader
bool operator== (const Ipv6ExtensionHeader &)=delete
 

Protected Attributes

uint8_t routingType = 0
 
uint8_t segmentsLeft = 0
 
Ipv6Addressaddress = nullptr
 
size_t address_arraysize = 0
 
- Protected Attributes inherited from inet::Ipv6ExtensionHeader
uint8_t extensionType = 0
 
B byteLength = B(0)
 

Private Member Functions

void copy (const Ipv6RoutingHeader &other)
 

Detailed Description

Class generated from inet/networklayer/ipv6/Ipv6ExtensionHeaders.msg:54 by opp_msgtool.

//
// Routing Header
// RFC 2460 Section 4.4
// Next Header Value: 43
//
class Ipv6RoutingHeader extends Ipv6ExtensionHeader
{
    extensionType = IP_PROT_IPv6EXT_ROUTING;
    byteLength = B(8);
    //byteLength = 8+16*getAddressArraySize() when routingType == 0
    uint8_t routingType;
    uint8_t segmentsLeft;
    Ipv6Address address[];
}

Constructor & Destructor Documentation

◆ Ipv6RoutingHeader() [1/2]

inet::Ipv6RoutingHeader::Ipv6RoutingHeader ( )

◆ Ipv6RoutingHeader() [2/2]

inet::Ipv6RoutingHeader::Ipv6RoutingHeader ( const Ipv6RoutingHeader other)

◆ ~Ipv6RoutingHeader()

virtual inet::Ipv6RoutingHeader::~Ipv6RoutingHeader ( )
virtual

Member Function Documentation

◆ appendAddress()

virtual void inet::Ipv6RoutingHeader::appendAddress ( const Ipv6Address address)
virtual

◆ copy()

void inet::Ipv6RoutingHeader::copy ( const Ipv6RoutingHeader other)
private

◆ dup()

virtual Ipv6RoutingHeader* inet::Ipv6RoutingHeader::dup ( ) const
inlineoverridevirtual

Reimplemented from inet::Ipv6ExtensionHeader.

170 {return new Ipv6RoutingHeader(*this);}

◆ eraseAddress()

virtual void inet::Ipv6RoutingHeader::eraseAddress ( size_t  k)
virtual

◆ getAddress()

virtual const Ipv6Address& inet::Ipv6RoutingHeader::getAddress ( size_t  k) const
virtual

◆ getAddressArraySize()

virtual size_t inet::Ipv6RoutingHeader::getAddressArraySize ( ) const
virtual

◆ getAddressForUpdate()

virtual Ipv6Address& inet::Ipv6RoutingHeader::getAddressForUpdate ( size_t  k)
inlinevirtual
183 { return const_cast<Ipv6Address&>(const_cast<Ipv6RoutingHeader*>(this)->getAddress(k));}

◆ getRoutingType()

virtual uint8_t inet::Ipv6RoutingHeader::getRoutingType ( ) const
virtual

◆ getSegmentsLeft()

virtual uint8_t inet::Ipv6RoutingHeader::getSegmentsLeft ( ) const
virtual

◆ insertAddress() [1/2]

void inet::Ipv6RoutingHeader::insertAddress ( const Ipv6Address address)
inline

◆ insertAddress() [2/2]

virtual void inet::Ipv6RoutingHeader::insertAddress ( size_t  k,
const Ipv6Address address 
)
virtual

◆ operator=()

Ipv6RoutingHeader& inet::Ipv6RoutingHeader::operator= ( const Ipv6RoutingHeader other)

◆ operator==()

bool inet::Ipv6RoutingHeader::operator== ( const Ipv6RoutingHeader )
protecteddelete

◆ parsimPack()

virtual void inet::Ipv6RoutingHeader::parsimPack ( omnetpp::cCommBuffer *  b) const
overridevirtual

Reimplemented from inet::Ipv6ExtensionHeader.

Referenced by inet::doParsimPacking().

◆ parsimUnpack()

virtual void inet::Ipv6RoutingHeader::parsimUnpack ( omnetpp::cCommBuffer *  b)
overridevirtual

Reimplemented from inet::Ipv6ExtensionHeader.

Referenced by inet::doParsimUnpacking().

◆ setAddress()

virtual void inet::Ipv6RoutingHeader::setAddress ( size_t  k,
const Ipv6Address address 
)
virtual

◆ setAddressArraySize()

virtual void inet::Ipv6RoutingHeader::setAddressArraySize ( size_t  size)
virtual

◆ setRoutingType()

virtual void inet::Ipv6RoutingHeader::setRoutingType ( uint8_t  routingType)
virtual

◆ setSegmentsLeft()

virtual void inet::Ipv6RoutingHeader::setSegmentsLeft ( uint8_t  segmentsLeft)
virtual

Member Data Documentation

◆ address

Ipv6Address* inet::Ipv6RoutingHeader::address = nullptr
protected

◆ address_arraysize

size_t inet::Ipv6RoutingHeader::address_arraysize = 0
protected

◆ routingType

uint8_t inet::Ipv6RoutingHeader::routingType = 0
protected

◆ segmentsLeft

uint8_t inet::Ipv6RoutingHeader::segmentsLeft = 0
protected

The documentation for this class was generated from the following file:
inet::Ipv6RoutingHeader::getAddress
virtual const Ipv6Address & getAddress(size_t k) const
inet::Ipv6RoutingHeader::appendAddress
virtual void appendAddress(const Ipv6Address &address)
inet::Ipv6RoutingHeader::address
Ipv6Address * address
Definition: Ipv6ExtensionHeaders_m.h:156
inet::physicallayer::k
const double k
Definition: Qam1024Modulation.cc:14
inet::Ipv6RoutingHeader::Ipv6RoutingHeader
Ipv6RoutingHeader()