ICMPv6 option header. More...
#include <icmpv6-header.h>
Public Member Functions | |
Icmpv6OptionHeader () | |
Constructor. | |
virtual | ~Icmpv6OptionHeader () |
Destructor. | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. | |
virtual TypeId | GetInstanceTypeId () const |
Get the instance type ID. | |
uint8_t | GetLength () const |
Get the length of the option in 8 bytes unit. | |
virtual uint32_t | GetSerializedSize () const |
Get the serialized size. | |
uint8_t | GetType () const |
Get the type of the option. | |
virtual void | Print (std::ostream &os) const |
Print informations. | |
virtual void | Serialize (Buffer::Iterator start) const |
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. | |
![]() | |
virtual | ~Header () |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the UID of this class. |
Private Attributes | |
uint8_t | m_len |
The length. | |
uint8_t | m_type |
The type. |
Additional Inherited Members | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
ICMPv6 option header.
Doxygen introspection did not find any typical Config paths.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 241 of file icmpv6-header.h.
ns3::Icmpv6OptionHeader::Icmpv6OptionHeader | ( | ) |
Constructor.
Definition at line 1470 of file icmpv6-header.cc.
References m_len, m_type, and NS_LOG_FUNCTION.
|
virtual |
|
virtual |
Deserialize the packet.
start | start offset |
Implements ns3::Header.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1519 of file icmpv6-header.cc.
References GetSerializedSize(), and NS_LOG_FUNCTION.
|
virtual |
Get the instance type ID.
Implements ns3::ObjectBase.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1463 of file icmpv6-header.cc.
References GetTypeId(), and NS_LOG_FUNCTION.
uint8_t ns3::Icmpv6OptionHeader::GetLength | ( | ) | const |
Get the length of the option in 8 bytes unit.
Definition at line 1495 of file icmpv6-header.cc.
References m_len, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6OptionLinkLayerAddress::Deserialize(), ns3::Icmpv6OptionRedirected::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::GetSerializedSize(), 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().
|
virtual |
Get the serialized size.
Implements ns3::Header.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1513 of file icmpv6-header.cc.
References m_len, and NS_LOG_FUNCTION.
Referenced by Deserialize().
uint8_t ns3::Icmpv6OptionHeader::GetType | ( | void | ) | const |
Get the type of the option.
Definition at line 1483 of file icmpv6-header.cc.
References m_type, and NS_LOG_FUNCTION_NOARGS.
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().
|
static |
Get the UID of this class.
Reimplemented from ns3::Header.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1454 of file icmpv6-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
Print informations.
os | output stream |
Implements ns3::Header.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1507 of file icmpv6-header.cc.
References GetLength(), GetType(), and NS_LOG_FUNCTION.
|
virtual |
Serialize the packet.
start | start offset |
Implements ns3::Header.
Reimplemented in ns3::Icmpv6OptionRedirected, ns3::Icmpv6OptionLinkLayerAddress, ns3::Icmpv6OptionPrefixInformation, and ns3::Icmpv6OptionMtu.
Definition at line 1525 of file icmpv6-header.cc.
References NS_LOG_FUNCTION.
void ns3::Icmpv6OptionHeader::SetLength | ( | uint8_t | len | ) |
Set the length of the option.
len | length value to set |
Definition at line 1501 of file icmpv6-header.cc.
References m_len, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6OptionMtu::Deserialize(), ns3::Icmpv6OptionPrefixInformation::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::Deserialize(), ns3::Icmpv6OptionRedirected::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress(), ns3::Icmpv6OptionMtu::Icmpv6OptionMtu(), ns3::Icmpv6OptionPrefixInformation::Icmpv6OptionPrefixInformation(), and ns3::Icmpv6OptionRedirected::SetPacket().
void ns3::Icmpv6OptionHeader::SetType | ( | uint8_t | type | ) |
Set the type of the option.
type | the type to set |
Definition at line 1489 of file icmpv6-header.cc.
References m_type, and NS_LOG_FUNCTION.
Referenced by ns3::Icmpv6OptionMtu::Deserialize(), ns3::Icmpv6OptionPrefixInformation::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::Deserialize(), ns3::Icmpv6OptionRedirected::Deserialize(), ns3::Icmpv6OptionLinkLayerAddress::Icmpv6OptionLinkLayerAddress(), ns3::Icmpv6OptionMtu::Icmpv6OptionMtu(), ns3::Icmpv6OptionPrefixInformation::Icmpv6OptionPrefixInformation(), and ns3::Icmpv6OptionRedirected::Icmpv6OptionRedirected().
|
private |
The length.
Definition at line 324 of file icmpv6-header.h.
Referenced by GetLength(), GetSerializedSize(), Icmpv6OptionHeader(), and SetLength().
|
private |
The type.
Definition at line 319 of file icmpv6-header.h.
Referenced by GetType(), Icmpv6OptionHeader(), and SetType().