Concrete IPv6 specific PbbAddressBlock. More...
#include "packetbb.h"
Public Member Functions | |
PbbAddressBlockIpv6 () | |
~PbbAddressBlockIpv6 () override | |
Public Member Functions inherited from ns3::PbbAddressBlock | |
PbbAddressBlock () | |
virtual | ~PbbAddressBlock () |
Address | AddressBack () const |
AddressIterator | AddressBegin () |
ConstAddressIterator | AddressBegin () const |
void | AddressClear () |
Removes all addresses from this block. More... | |
bool | AddressEmpty () const |
AddressIterator | AddressEnd () |
ConstAddressIterator | AddressEnd () const |
AddressIterator | AddressErase (AddressIterator first, AddressIterator last) |
Removes all addresses from [first, last) (includes first, not includes last). More... | |
AddressIterator | AddressErase (AddressIterator position) |
Removes the address at the specified position. More... | |
Address | AddressFront () const |
AddressIterator | AddressInsert (AddressIterator position, const Address value) |
Inserts an address at the specified position in this block. More... | |
void | AddressPopBack () |
Removes an address from the back of this block. More... | |
void | AddressPopFront () |
Removes an address from the front of this block. More... | |
void | AddressPushBack (Address address) |
Appends an address to the back of this block. More... | |
void | AddressPushFront (Address address) |
Prepends an address to the front of this block. More... | |
int | AddressSize () const |
void | Deserialize (Buffer::Iterator &start) |
Deserializes an address block from the specified buffer. More... | |
uint32_t | GetSerializedSize () const |
bool | operator!= (const PbbAddressBlock &other) const |
Inequality operator for PbbAddressBlock. More... | |
bool | operator== (const PbbAddressBlock &other) const |
Equality operator for PbbAddressBlock. More... | |
uint8_t | PrefixBack () const |
PrefixIterator | PrefixBegin () |
ConstPrefixIterator | PrefixBegin () const |
void | PrefixClear () |
Removes all prefixes from this block. More... | |
bool | PrefixEmpty () const |
PrefixIterator | PrefixEnd () |
ConstPrefixIterator | PrefixEnd () const |
PrefixIterator | PrefixErase (PrefixIterator first, PrefixIterator last) |
Removes all prefixes from [first, last) (includes first, not includes last). More... | |
PrefixIterator | PrefixErase (PrefixIterator position) |
Removes the prefix at the specified position. More... | |
uint8_t | PrefixFront () const |
PrefixIterator | PrefixInsert (PrefixIterator position, const uint8_t value) |
Inserts a prefix at the specified position in this block. More... | |
void | PrefixPopBack () |
Removes a prefix from the back of this block. More... | |
void | PrefixPopFront () |
Removes a prefix from the front of this block. More... | |
void | PrefixPushBack (uint8_t prefix) |
Appends a prefix to the back of this block. More... | |
void | PrefixPushFront (uint8_t prefix) |
Prepends a prefix to the front of this block. More... | |
int | PrefixSize () const |
void | Print (std::ostream &os) const |
Pretty-prints the contents of this address block. More... | |
void | Print (std::ostream &os, int level) const |
Pretty-prints the contents of this address block, with specified indentation. More... | |
void | Serialize (Buffer::Iterator &start) const |
Serializes this address block into the specified buffer. More... | |
Ptr< PbbAddressTlv > | TlvBack () |
const Ptr< PbbAddressTlv > | TlvBack () const |
TlvIterator | TlvBegin () |
ConstTlvIterator | TlvBegin () const |
void | TlvClear () |
Removes all address TLVs from this block. More... | |
bool | TlvEmpty () const |
TlvIterator | TlvEnd () |
ConstTlvIterator | TlvEnd () const |
TlvIterator | TlvErase (TlvIterator first, TlvIterator last) |
Removes all address TLVs from [first, last) (includes first, not includes last). More... | |
TlvIterator | TlvErase (TlvIterator position) |
Removes the address TLV at the specified position. More... | |
Ptr< PbbAddressTlv > | TlvFront () |
const Ptr< PbbAddressTlv > | TlvFront () const |
TlvIterator | TlvInsert (TlvIterator position, const Ptr< PbbTlv > value) |
Inserts an address TLV at the specified position in this block. More... | |
void | TlvPopBack () |
Removes an address TLV from the back of this message. More... | |
void | TlvPopFront () |
Removes an address TLV from the front of this message. More... | |
void | TlvPushBack (Ptr< PbbAddressTlv > address) |
Appends an address TLV to the back of this message. More... | |
void | TlvPushFront (Ptr< PbbAddressTlv > address) |
Prepends an address TLV to the front of this message. More... | |
int | TlvSize () const |
Public Member Functions inherited from ns3::SimpleRefCount< PbbAddressBlock > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o[[maybe_unused]]) |
Assignment operator. More... | |
void | Ref () const |
Increment the reference count. More... | |
void | Unref () const |
Decrement the reference count. More... | |
Protected Member Functions | |
Address | DeserializeAddress (uint8_t *buffer) const override |
Deserialize one address. More... | |
uint8_t | GetAddressLength () const override |
Returns address length. More... | |
void | PrintAddress (std::ostream &os, ConstAddressIterator iter) const override |
Print one or more addresses. More... | |
void | SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const override |
Serialize one or more addresses. More... | |
Additional Inherited Members | |
Public Types inherited from ns3::PbbAddressBlock | |
typedef std::list< Address >::iterator | AddressIterator |
Address iterator. More... | |
typedef std::list< Address >::const_iterator | ConstAddressIterator |
Address const iterator. More... | |
typedef std::list< uint8_t >::const_iterator | ConstPrefixIterator |
Prefix const iterator. More... | |
typedef PbbAddressTlvBlock::ConstIterator | ConstTlvIterator |
tlvblock const iterator More... | |
typedef std::list< uint8_t >::iterator | PrefixIterator |
Prefix iterator. More... | |
typedef PbbAddressTlvBlock::Iterator | TlvIterator |
tlvblock iterator More... | |
Concrete IPv6 specific PbbAddressBlock.
This address block will only contain IPv6 addresses.
Definition at line 1636 of file packetbb.h.
ns3::PbbAddressBlockIpv6::PbbAddressBlockIpv6 | ( | ) |
Definition at line 2564 of file packetbb.cc.
References NS_LOG_FUNCTION.
|
override |
Definition at line 2569 of file packetbb.cc.
References NS_LOG_FUNCTION.
|
overrideprotectedvirtual |
Deserialize one address.
buffer | the buffer to deserialize from |
Implements ns3::PbbAddressBlock.
Definition at line 2589 of file packetbb.cc.
References ns3::Ipv6Address::Deserialize(), and NS_LOG_FUNCTION.
|
overrideprotectedvirtual |
Returns address length.
Implements ns3::PbbAddressBlock.
Definition at line 2575 of file packetbb.cc.
References NS_LOG_FUNCTION.
|
overrideprotectedvirtual |
Print one or more addresses.
os | the output stream |
iter | the iterator to the addresses |
Implements ns3::PbbAddressBlock.
Definition at line 2596 of file packetbb.cc.
References ns3::Ipv6Address::ConvertFrom(), NS_LOG_FUNCTION, and ns3::Ipv6Address::Print().
|
overrideprotectedvirtual |
Serialize one or more addresses.
buffer | the buffer to serialize to |
iter | the iterator to the addresses |
Implements ns3::PbbAddressBlock.
Definition at line 2582 of file packetbb.cc.
References ns3::Ipv6Address::ConvertFrom(), NS_LOG_FUNCTION, and ns3::Ipv6Address::Serialize().