An Address Block and its associated Address TLV Blocks. More...
#include "packetbb.h"
Public Types | |
typedef std::list< Address >::iterator | AddressIterator |
Address iterator. | |
typedef std::list< Address >::const_iterator | ConstAddressIterator |
Address const iterator. | |
typedef std::list< uint8_t >::const_iterator | ConstPrefixIterator |
Prefix const iterator. | |
typedef PbbAddressTlvBlock::ConstIterator | ConstTlvIterator |
tlvblock const iterator | |
typedef std::list< uint8_t >::iterator | PrefixIterator |
Prefix iterator. | |
typedef PbbAddressTlvBlock::Iterator | TlvIterator |
tlvblock iterator | |
Public Member Functions | |
PbbAddressBlock () | |
virtual | ~PbbAddressBlock () |
Address | AddressBack () const |
AddressIterator | AddressBegin () |
ConstAddressIterator | AddressBegin () const |
void | AddressClear () |
Removes all addresses from this block. | |
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). | |
AddressIterator | AddressErase (AddressIterator position) |
Removes the address at the specified position. | |
Address | AddressFront () const |
AddressIterator | AddressInsert (AddressIterator position, const Address value) |
Inserts an address at the specified position in this block. | |
void | AddressPopBack () |
Removes an address from the back of this block. | |
void | AddressPopFront () |
Removes an address from the front of this block. | |
void | AddressPushBack (Address address) |
Appends an address to the back of this block. | |
void | AddressPushFront (Address address) |
Prepends an address to the front of this block. | |
int | AddressSize () const |
void | Deserialize (Buffer::Iterator &start) |
Deserializes an address block from the specified buffer. | |
uint32_t | GetSerializedSize () const |
bool | operator!= (const PbbAddressBlock &other) const |
Inequality operator for PbbAddressBlock. | |
bool | operator== (const PbbAddressBlock &other) const |
Equality operator for PbbAddressBlock. | |
uint8_t | PrefixBack () const |
PrefixIterator | PrefixBegin () |
ConstPrefixIterator | PrefixBegin () const |
void | PrefixClear () |
Removes all prefixes from this block. | |
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). | |
PrefixIterator | PrefixErase (PrefixIterator position) |
Removes the prefix at the specified position. | |
uint8_t | PrefixFront () const |
PrefixIterator | PrefixInsert (PrefixIterator position, const uint8_t value) |
Inserts a prefix at the specified position in this block. | |
void | PrefixPopBack () |
Removes a prefix from the back of this block. | |
void | PrefixPopFront () |
Removes a prefix from the front of this block. | |
void | PrefixPushBack (uint8_t prefix) |
Appends a prefix to the back of this block. | |
void | PrefixPushFront (uint8_t prefix) |
Prepends a prefix to the front of this block. | |
int | PrefixSize () const |
void | Print (std::ostream &os) const |
Pretty-prints the contents of this address block. | |
void | Print (std::ostream &os, int level) const |
Pretty-prints the contents of this address block, with specified indentation. | |
void | Serialize (Buffer::Iterator &start) const |
Serializes this address block into the specified buffer. | |
Ptr< PbbAddressTlv > | TlvBack () |
const Ptr< PbbAddressTlv > | TlvBack () const |
TlvIterator | TlvBegin () |
ConstTlvIterator | TlvBegin () const |
void | TlvClear () |
Removes all address TLVs from this block. | |
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). | |
TlvIterator | TlvErase (TlvIterator position) |
Removes the address TLV at the specified position. | |
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. | |
void | TlvPopBack () |
Removes an address TLV from the back of this message. | |
void | TlvPopFront () |
Removes an address TLV from the front of this message. | |
void | TlvPushBack (Ptr< PbbAddressTlv > address) |
Appends an address TLV to the back of this message. | |
void | TlvPushFront (Ptr< PbbAddressTlv > address) |
Prepends an address TLV to the front of this message. | |
int | TlvSize () const |
Public Member Functions inherited from ns3::SimpleRefCount< PbbAddressBlock > | |
SimpleRefCount () | |
Default constructor. | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. | |
void | Ref () const |
Increment the reference count. | |
void | Unref () const |
Decrement the reference count. | |
Protected Member Functions | |
virtual Address | DeserializeAddress (uint8_t *buffer) const =0 |
Deserialize one address. | |
virtual uint8_t | GetAddressLength () const =0 |
Returns address length. | |
virtual void | PrintAddress (std::ostream &os, ConstAddressIterator iter) const =0 |
Print one or more addresses. | |
virtual void | SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const =0 |
Serialize one or more addresses. | |
Private Member Functions | |
void | GetHeadTail (uint8_t *head, uint8_t &headlen, uint8_t *tail, uint8_t &taillen) const |
Get head and tail. | |
uint8_t | GetPrefixFlags () const |
Get the prefix flags. | |
bool | HasZeroTail (const uint8_t *tail, uint8_t taillen) const |
Check if the tail is empty. | |
Private Attributes | |
std::list< Address > | m_addressList |
Addresses container. | |
PbbAddressTlvBlock | m_addressTlvList |
PbbAddressTlv container. | |
std::list< uint8_t > | m_prefixList |
Prefixes container. | |
An Address Block and its associated Address TLV Blocks.
This is a pure virtual base class, when creating address blocks, you should instantiate either PbbAddressBlockIpv4 or PbbAddressBlockIpv6.
Definition at line 1184 of file packetbb.h.
typedef std::list<Address>::iterator ns3::PbbAddressBlock::AddressIterator |
Address iterator.
Definition at line 1188 of file packetbb.h.
typedef std::list<Address>::const_iterator ns3::PbbAddressBlock::ConstAddressIterator |
Address const iterator.
Definition at line 1190 of file packetbb.h.
typedef std::list<uint8_t>::const_iterator ns3::PbbAddressBlock::ConstPrefixIterator |
Prefix const iterator.
Definition at line 1195 of file packetbb.h.
tlvblock const iterator
Definition at line 1200 of file packetbb.h.
typedef std::list<uint8_t>::iterator ns3::PbbAddressBlock::PrefixIterator |
Prefix iterator.
Definition at line 1193 of file packetbb.h.
tlvblock iterator
Definition at line 1198 of file packetbb.h.
ns3::PbbAddressBlock::PbbAddressBlock | ( | ) |
Definition at line 1808 of file packetbb.cc.
References NS_LOG_FUNCTION.
|
virtual |
Definition at line 1813 of file packetbb.cc.
References NS_LOG_FUNCTION.
Address ns3::PbbAddressBlock::AddressBack | ( | ) | const |
Definition at line 1870 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressBegin | ( | ) |
Definition at line 1821 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by GetHeadTail(), operator==(), Print(), and Serialize().
PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressBegin | ( | ) | const |
Definition at line 1828 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::AddressClear | ( | ) |
Removes all addresses from this block.
Definition at line 1920 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::AddressEmpty | ( | ) | const |
Definition at line 1856 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressEnd | ( | ) |
Definition at line 1835 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by GetHeadTail(), operator==(), Print(), and Serialize().
PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressEnd | ( | ) | const |
Definition at line 1842 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressErase | ( | PbbAddressBlock::AddressIterator | first, |
PbbAddressBlock::AddressIterator | last ) |
Removes all addresses from [first, last) (includes first, not includes last).
first | an Iterator pointing to the first address to erase (inclusive). |
last | an Iterator pointing to the element past the last address to erase. |
Definition at line 1912 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressErase | ( | PbbAddressBlock::AddressIterator | position | ) |
Removes the address at the specified position.
position | an Iterator pointing to the address to erase. |
Definition at line 1905 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Address ns3::PbbAddressBlock::AddressFront | ( | ) | const |
Definition at line 1863 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
AddressIterator ns3::PbbAddressBlock::AddressInsert | ( | AddressIterator | position, |
const Address | value ) |
Inserts an address at the specified position in this block.
position | an Iterator pointing to the position in this block to insert the address. |
value | the address to insert. |
void ns3::PbbAddressBlock::AddressPopBack | ( | ) |
Removes an address from the back of this block.
Definition at line 1898 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::AddressPopFront | ( | ) |
Removes an address from the front of this block.
Definition at line 1884 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::AddressPushBack | ( | Address | address | ) |
Appends an address to the back of this block.
address | the address to append. |
Definition at line 1891 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbAddressBlock::AddressPushFront | ( | Address | address | ) |
Prepends an address to the front of this block.
address | the address to prepend. |
Definition at line 1877 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
int ns3::PbbAddressBlock::AddressSize | ( | ) | const |
Definition at line 1849 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by GetSerializedSize(), operator==(), and Serialize().
void ns3::PbbAddressBlock::Deserialize | ( | Buffer::Iterator & | start | ) |
Deserializes an address block from the specified buffer.
start | a reference to the point in a buffer to begin deserializing. |
Users should not need to call this. Blocks will be deserialized by their containing packet.
Definition at line 2291 of file packetbb.cc.
References AddressPushBack(), AHAS_FULL_TAIL, AHAS_HEAD, AHAS_MULTI_PRE_LEN, AHAS_SINGLE_PRE_LEN, AHAS_ZERO_TAIL, ns3::PbbAddressTlvBlock::Deserialize(), DeserializeAddress(), GetAddressLength(), m_addressTlvList, NS_LOG_FUNCTION, and PrefixPushBack().
|
protectedpure virtual |
Deserialize one address.
buffer | the buffer to deserialize from |
Implemented in ns3::PbbAddressBlockIpv4, and ns3::PbbAddressBlockIpv6.
Referenced by Deserialize().
|
protectedpure virtual |
Returns address length.
Implemented in ns3::PbbAddressBlockIpv4, and ns3::PbbAddressBlockIpv6.
Referenced by Deserialize(), GetHeadTail(), GetSerializedSize(), and Serialize().
|
private |
Get head and tail.
head | the head |
headlen | the head length |
tail | the tail |
taillen | the tail length |
Definition at line 2444 of file packetbb.cc.
References AddressBegin(), AddressEnd(), GetAddressLength(), NS_LOG_FUNCTION, and SerializeAddress().
Referenced by GetSerializedSize(), and Serialize().
|
private |
Get the prefix flags.
Definition at line 2426 of file packetbb.cc.
References AHAS_MULTI_PRE_LEN, AHAS_SINGLE_PRE_LEN, NS_LOG_FUNCTION, and PrefixSize().
Referenced by Serialize().
uint32_t ns3::PbbAddressBlock::GetSerializedSize | ( | ) | const |
Definition at line 2163 of file packetbb.cc.
References AddressSize(), GetAddressLength(), GetHeadTail(), ns3::PbbAddressTlvBlock::GetSerializedSize(), HasZeroTail(), m_addressTlvList, NS_LOG_FUNCTION, and PrefixSize().
|
private |
Check if the tail is empty.
tail | the tail |
taillen | the tail length |
Definition at line 2505 of file packetbb.cc.
References NS_LOG_FUNCTION.
Referenced by GetSerializedSize(), and Serialize().
bool ns3::PbbAddressBlock::operator!= | ( | const PbbAddressBlock & | other | ) | const |
Inequality operator for PbbAddressBlock.
other | PbbAddressBlock to compare to this one |
Definition at line 2420 of file packetbb.cc.
bool ns3::PbbAddressBlock::operator== | ( | const PbbAddressBlock & | other | ) | const |
Equality operator for PbbAddressBlock.
other | PbbAddressBlock to compare to this one |
Definition at line 2380 of file packetbb.cc.
References AddressBegin(), AddressEnd(), AddressSize(), m_addressTlvList, PrefixBegin(), PrefixEnd(), and PrefixSize().
uint8_t ns3::PbbAddressBlock::PrefixBack | ( | ) | const |
Definition at line 1978 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixBegin | ( | ) |
Definition at line 1929 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixBegin | ( | ) | const |
Definition at line 1936 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixClear | ( | ) |
Removes all prefixes from this block.
Definition at line 2035 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::PrefixEmpty | ( | ) | const |
Definition at line 1964 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixEnd | ( | ) |
Definition at line 1943 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixEnd | ( | ) | const |
Definition at line 1950 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixErase | ( | PbbAddressBlock::PrefixIterator | first, |
PbbAddressBlock::PrefixIterator | last ) |
Removes all prefixes from [first, last) (includes first, not includes last).
first | an Iterator pointing to the first prefix to erase (inclusive). |
last | an Iterator pointing to the element past the last prefix to erase. |
Definition at line 2027 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixErase | ( | PbbAddressBlock::PrefixIterator | position | ) |
Removes the prefix at the specified position.
position | an Iterator pointing to the prefix to erase. |
Definition at line 2020 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
uint8_t ns3::PbbAddressBlock::PrefixFront | ( | ) | const |
Definition at line 1971 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by Serialize().
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixInsert | ( | PbbAddressBlock::PrefixIterator | position, |
const uint8_t | value ) |
Inserts a prefix at the specified position in this block.
position | an Iterator pointing to the position in this block to insert the prefix. |
value | the prefix to insert. |
Definition at line 2013 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixPopBack | ( | ) |
Removes a prefix from the back of this block.
Definition at line 2006 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixPopFront | ( | ) |
Removes a prefix from the front of this block.
Definition at line 1992 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixPushBack | ( | uint8_t | prefix | ) |
Appends a prefix to the back of this block.
prefix | the prefix to append. |
Definition at line 1999 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbAddressBlock::PrefixPushFront | ( | uint8_t | prefix | ) |
Prepends a prefix to the front of this block.
prefix | the prefix to prepend. |
Definition at line 1985 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
int ns3::PbbAddressBlock::PrefixSize | ( | ) | const |
Definition at line 1957 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by GetPrefixFlags(), GetSerializedSize(), operator==(), and Serialize().
void ns3::PbbAddressBlock::Print | ( | std::ostream & | os | ) | const |
Pretty-prints the contents of this address block.
os | a stream object to print to. |
Definition at line 2345 of file packetbb.cc.
References NS_LOG_FUNCTION, and Print().
Referenced by Print().
void ns3::PbbAddressBlock::Print | ( | std::ostream & | os, |
int | level ) const |
Pretty-prints the contents of this address block, with specified indentation.
os | a stream object to print to. |
level | level of indentation. |
This probably never needs to be called by users. This is used when recursively printing sub-objects.
Definition at line 2352 of file packetbb.cc.
References AddressBegin(), AddressEnd(), m_addressTlvList, NS_LOG_FUNCTION, PrefixBegin(), PrefixEnd(), ns3::PbbAddressTlvBlock::Print(), and PrintAddress().
|
protectedpure virtual |
Print one or more addresses.
os | the output stream |
iter | the iterator to the addresses |
Implemented in ns3::PbbAddressBlockIpv4, and ns3::PbbAddressBlockIpv6.
Referenced by Print().
void ns3::PbbAddressBlock::Serialize | ( | Buffer::Iterator & | start | ) | const |
Serializes this address block into the specified buffer.
start | a reference to the point in a buffer to begin serializing. |
Users should not need to call this. Blocks will be deserialized by their containing packet.
Definition at line 2211 of file packetbb.cc.
References AddressBegin(), AddressEnd(), AddressSize(), AHAS_FULL_TAIL, AHAS_HEAD, AHAS_SINGLE_PRE_LEN, AHAS_ZERO_TAIL, GetAddressLength(), GetHeadTail(), GetPrefixFlags(), HasZeroTail(), m_addressTlvList, ns3::Buffer::Iterator::Next(), NS_LOG_FUNCTION, PrefixBegin(), PrefixEnd(), PrefixFront(), PrefixSize(), ns3::PbbAddressTlvBlock::Serialize(), SerializeAddress(), and ns3::Buffer::Iterator::WriteU8().
|
protectedpure virtual |
Serialize one or more addresses.
buffer | the buffer to serialize to |
iter | the iterator to the addresses |
Implemented in ns3::PbbAddressBlockIpv4, and ns3::PbbAddressBlockIpv6.
Referenced by GetHeadTail(), and Serialize().
Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack | ( | ) |
Definition at line 2100 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Back(), m_addressTlvList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack | ( | ) | const |
Definition at line 2107 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Back(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvBegin | ( | ) |
Definition at line 2044 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Begin(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvBegin | ( | ) | const |
Definition at line 2051 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Begin(), m_addressTlvList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::TlvClear | ( | ) |
Removes all address TLVs from this block.
Definition at line 2156 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Clear(), m_addressTlvList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::TlvEmpty | ( | ) | const |
Definition at line 2079 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Empty(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvEnd | ( | ) |
Definition at line 2058 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::End(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvEnd | ( | ) | const |
Definition at line 2065 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::End(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvErase | ( | PbbAddressBlock::TlvIterator | first, |
PbbAddressBlock::TlvIterator | last ) |
Removes all address TLVs from [first, last) (includes first, not includes last).
first | an Iterator pointing to the first address TLV to erase (inclusive). |
last | an Iterator pointing to the element past the last address TLV to erase. |
Definition at line 2149 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Erase(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvErase | ( | PbbAddressBlock::TlvIterator | position | ) |
Removes the address TLV at the specified position.
position | an Iterator pointing to the address TLV to erase. |
Definition at line 2142 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Erase(), m_addressTlvList, and NS_LOG_FUNCTION.
Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront | ( | ) |
Definition at line 2086 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Front(), m_addressTlvList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront | ( | ) | const |
Definition at line 2093 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Front(), m_addressTlvList, and NS_LOG_FUNCTION.
TlvIterator ns3::PbbAddressBlock::TlvInsert | ( | TlvIterator | position, |
const Ptr< PbbTlv > | value ) |
Inserts an address TLV at the specified position in this block.
position | an Iterator pointing to the position in this block to insert the address TLV. |
value | the prefix to insert. |
void ns3::PbbAddressBlock::TlvPopBack | ( | ) |
Removes an address TLV from the back of this message.
Definition at line 2135 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PopBack().
void ns3::PbbAddressBlock::TlvPopFront | ( | ) |
Removes an address TLV from the front of this message.
Definition at line 2121 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PopFront().
void ns3::PbbAddressBlock::TlvPushBack | ( | Ptr< PbbAddressTlv > | address | ) |
Appends an address TLV to the back of this message.
address | a smart pointer to the address TLV to append. |
Definition at line 2128 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PushBack().
void ns3::PbbAddressBlock::TlvPushFront | ( | Ptr< PbbAddressTlv > | address | ) |
Prepends an address TLV to the front of this message.
address | a smart pointer to the address TLV to prepend. |
Definition at line 2114 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PushFront().
int ns3::PbbAddressBlock::TlvSize | ( | ) | const |
Definition at line 2072 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::Size().
|
private |
Addresses container.
Definition at line 1605 of file packetbb.h.
Referenced by AddressBack(), AddressBegin(), AddressBegin(), AddressClear(), AddressEmpty(), AddressEnd(), AddressEnd(), AddressErase(), AddressErase(), AddressFront(), AddressPopBack(), AddressPopFront(), AddressPushBack(), AddressPushFront(), and AddressSize().
|
private |
PbbAddressTlv container.
Definition at line 1607 of file packetbb.h.
Referenced by Deserialize(), GetSerializedSize(), operator==(), Print(), Serialize(), TlvBack(), TlvBack(), TlvBegin(), TlvBegin(), TlvClear(), TlvEmpty(), TlvEnd(), TlvEnd(), TlvErase(), TlvErase(), TlvFront(), TlvFront(), TlvPopBack(), TlvPopFront(), TlvPushBack(), TlvPushFront(), and TlvSize().
|
private |
Prefixes container.
Definition at line 1606 of file packetbb.h.
Referenced by PrefixBack(), PrefixBegin(), PrefixBegin(), PrefixClear(), PrefixEmpty(), PrefixEnd(), PrefixEnd(), PrefixErase(), PrefixErase(), PrefixFront(), PrefixInsert(), PrefixPopBack(), PrefixPopFront(), PrefixPushBack(), PrefixPushFront(), and PrefixSize().