A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches

ICMPv6 option header. More...

#include "icmpv6-header.h"

+ Inheritance diagram for ns3::Icmpv6OptionHeader:
+ Collaboration diagram for ns3::Icmpv6OptionHeader:

Public Member Functions

 Icmpv6OptionHeader ()
 Constructor.
 
 ~Icmpv6OptionHeader () override
 Destructor.
 
uint32_t Deserialize (Buffer::Iterator start) override
 Deserialize the packet.
 
TypeId GetInstanceTypeId () const override
 Get the instance type ID.
 
uint8_t GetLength () const
 Get the length of the option in 8 bytes unit.
 
uint32_t GetSerializedSize () const override
 Get the serialized size.
 
uint8_t GetType () const
 Get the type of the option.
 
void Print (std::ostream &os) const override
 Print information.
 
void Serialize (Buffer::Iterator start) const override
 Serialize the packet.
 
void SetLength (uint8_t len)
 Set the length of the option.
 
void SetType (uint8_t type)
 Set the type of the option.
 
- Public Member Functions inherited from ns3::Header
 ~Header () override
 
uint32_t Deserialize (Buffer::Iterator start) override=0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual uint32_t GetSerializedSize () const =0
 
void Print (std::ostream &os) const override=0
 
virtual void Serialize (Buffer::Iterator start) const =0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual void Print (std::ostream &os) const =0
 Print the object contents.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
virtual TypeId GetInstanceTypeId () const =0
 Get the most derived TypeId for this Object.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the UID of this class.
 
- Static Public Member Functions inherited from ns3::Header
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::Chunk
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId ()
 Get the type ID.
 

Private Attributes

uint8_t m_len
 The length.
 
uint8_t m_type
 The type.
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes.
 
virtual void NotifyConstructionCompleted ()
 Notifier called once the ObjectBase is fully constructed.
 

Detailed Description

ICMPv6 option header.

Definition at line 240 of file icmpv6-header.h.

Constructor & Destructor Documentation

◆ Icmpv6OptionHeader()

ns3::Icmpv6OptionHeader::Icmpv6OptionHeader ( )

Constructor.

Todo:

Definition at line 1577 of file icmpv6-header.cc.

References m_len, m_type, and NS_LOG_FUNCTION.

◆ ~Icmpv6OptionHeader()

ns3::Icmpv6OptionHeader::~Icmpv6OptionHeader ( )
override

Destructor.

Definition at line 1585 of file icmpv6-header.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ Deserialize()

uint32_t ns3::Icmpv6OptionHeader::Deserialize ( Buffer::Iterator  start)
overridevirtual

Deserialize the packet.

Parameters
startstart offset
Returns
length of packet

Implements ns3::Header.

Reimplemented in ns3::Icmpv6OptionMtu, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionLinkLayerAddress, and ns3::Icmpv6OptionRedirected.

Definition at line 1633 of file icmpv6-header.cc.

References GetSerializedSize(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::Icmpv6OptionHeader::GetInstanceTypeId ( ) const
overridevirtual

Get the instance type ID.

Returns
instance type ID

Implements ns3::ObjectBase.

Reimplemented in ns3::Icmpv6OptionMtu, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionLinkLayerAddress, and ns3::Icmpv6OptionRedirected.

Definition at line 1571 of file icmpv6-header.cc.

References GetTypeId(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ GetLength()

uint8_t ns3::Icmpv6OptionHeader::GetLength ( ) const

◆ GetSerializedSize()

uint32_t ns3::Icmpv6OptionHeader::GetSerializedSize ( ) const
overridevirtual

Get the serialized size.

Returns
serialized size

Implements ns3::Header.

Reimplemented in ns3::Icmpv6OptionMtu, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionLinkLayerAddress, and ns3::Icmpv6OptionRedirected.

Definition at line 1626 of file icmpv6-header.cc.

References m_len, and NS_LOG_FUNCTION.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ GetType()

uint8_t ns3::Icmpv6OptionHeader::GetType ( ) const

Get the type of the option.

Returns
type

Definition at line 1591 of file icmpv6-header.cc.

References m_type, and NS_LOG_FUNCTION.

Referenced by Print(), ns3::Icmpv6OptionMtu::Print(), ns3::Icmpv6OptionPrefixInformation::Print(), ns3::Icmpv6OptionLinkLayerAddress::Print(), ns3::Icmpv6OptionRedirected::Print(), ns3::Icmpv6OptionMtu::Serialize(), ns3::Icmpv6OptionPrefixInformation::Serialize(), ns3::Icmpv6OptionLinkLayerAddress::Serialize(), and ns3::Icmpv6OptionRedirected::Serialize().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::Icmpv6OptionHeader::GetTypeId ( )
static

Get the UID of this class.

Returns
UID

Definition at line 1561 of file icmpv6-header.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Print()

void ns3::Icmpv6OptionHeader::Print ( std::ostream &  os) const
overridevirtual

Print information.

Parameters
osoutput stream

Implements ns3::Header.

Reimplemented in ns3::Icmpv6OptionMtu, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionLinkLayerAddress, and ns3::Icmpv6OptionRedirected.

Definition at line 1619 of file icmpv6-header.cc.

References GetLength(), GetType(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ Serialize()

void ns3::Icmpv6OptionHeader::Serialize ( Buffer::Iterator  start) const
overridevirtual

Serialize the packet.

Parameters
startstart offset

Implements ns3::Header.

Reimplemented in ns3::Icmpv6OptionMtu, ns3::Icmpv6OptionPrefixInformation, ns3::Icmpv6OptionLinkLayerAddress, and ns3::Icmpv6OptionRedirected.

Definition at line 1640 of file icmpv6-header.cc.

References NS_LOG_FUNCTION.

◆ SetLength()

void ns3::Icmpv6OptionHeader::SetLength ( uint8_t  len)

Set the length of the option.

Parameters
lenlength value to set

Definition at line 1612 of file icmpv6-header.cc.

References m_len, and NS_LOG_FUNCTION.

Referenced by ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress(), ns3::Icmpv6OptionMtu::Icmpv6OptionMtu(), ns3::Icmpv6OptionPrefixInformation::Icmpv6OptionPrefixInformation(), ns3::Icmpv6OptionMtu::Deserialize(), ns3::Icmpv6OptionPrefixInformation::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::Deserialize(), ns3::Icmpv6OptionRedirected::Deserialize(), and ns3::Icmpv6OptionRedirected::SetPacket().

+ Here is the caller graph for this function:

◆ SetType()

void ns3::Icmpv6OptionHeader::SetType ( uint8_t  type)

Member Data Documentation

◆ m_len

uint8_t ns3::Icmpv6OptionHeader::m_len
private

The length.

Definition at line 323 of file icmpv6-header.h.

Referenced by Icmpv6OptionHeader(), GetLength(), GetSerializedSize(), and SetLength().

◆ m_type

uint8_t ns3::Icmpv6OptionHeader::m_type
private

The type.

Definition at line 318 of file icmpv6-header.h.

Referenced by Icmpv6OptionHeader(), GetType(), and SetType().


The documentation for this class was generated from the following files: