An Address Block and its associated Address TLV Blocks. More...
#include "packetbb.h"
Public Types | |
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... | |
Public Member Functions | |
PbbAddressBlock () | |
virtual | ~PbbAddressBlock () |
Address | AddressBack (void) const |
AddressIterator | AddressBegin (void) |
ConstAddressIterator | AddressBegin (void) const |
void | AddressClear (void) |
Removes all addresses from this block. More... | |
bool | AddressEmpty (void) const |
AddressIterator | AddressEnd (void) |
ConstAddressIterator | AddressEnd (void) const |
AddressIterator | AddressErase (AddressIterator position) |
Removes the address at the specified position. More... | |
AddressIterator | AddressErase (AddressIterator first, AddressIterator last) |
Removes all addresses from [first, last) (includes first, not includes last). More... | |
Address | AddressFront (void) const |
AddressIterator | AddressInsert (AddressIterator position, const Address value) |
Inserts an address at the specified position in this block. More... | |
void | AddressPopBack (void) |
Removes an address from the back of this block. More... | |
void | AddressPopFront (void) |
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 (void) const |
void | Deserialize (Buffer::Iterator &start) |
Deserializes an address block from the specified buffer. More... | |
uint32_t | GetSerializedSize (void) 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 (void) const |
PrefixIterator | PrefixBegin (void) |
ConstPrefixIterator | PrefixBegin (void) const |
void | PrefixClear (void) |
Removes all prefixes from this block. More... | |
bool | PrefixEmpty (void) const |
PrefixIterator | PrefixEnd (void) |
ConstPrefixIterator | PrefixEnd (void) const |
PrefixIterator | PrefixErase (PrefixIterator position) |
Removes the prefix at the specified position. More... | |
PrefixIterator | PrefixErase (PrefixIterator first, PrefixIterator last) |
Removes all prefixes from [first, last) (includes first, not includes last). More... | |
uint8_t | PrefixFront (void) const |
PrefixIterator | PrefixInsert (PrefixIterator position, const uint8_t value) |
Inserts a prefix at the specified position in this block. More... | |
void | PrefixPopBack (void) |
Removes a prefix from the back of this block. More... | |
void | PrefixPopFront (void) |
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 (void) 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 (void) |
const Ptr< PbbAddressTlv > | TlvBack (void) const |
TlvIterator | TlvBegin (void) |
ConstTlvIterator | TlvBegin (void) const |
void | TlvClear (void) |
Removes all address TLVs from this block. More... | |
bool | TlvEmpty (void) const |
TlvIterator | TlvEnd (void) |
ConstTlvIterator | TlvEnd (void) const |
TlvIterator | TlvErase (TlvIterator position) |
Removes the address TLV at the specified position. More... | |
TlvIterator | TlvErase (TlvIterator first, TlvIterator last) |
Removes all address TLVs from [first, last) (includes first, not includes last). More... | |
Ptr< PbbAddressTlv > | TlvFront (void) |
const Ptr< PbbAddressTlv > | TlvFront (void) const |
TlvIterator | TlvInsert (TlvIterator position, const Ptr< PbbTlv > value) |
Inserts an address TLV at the specified position in this block. More... | |
void | TlvPopBack (void) |
Removes an address TLV from the back of this message. More... | |
void | TlvPopFront (void) |
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 (void) const |
Public Member Functions inherited from ns3::SimpleRefCount< PbbAddressBlock > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
Protected Member Functions | |
virtual Address | DeserializeAddress (uint8_t *buffer) const =0 |
Deserialize one address. More... | |
virtual uint8_t | GetAddressLength (void) const =0 |
Returns address length. More... | |
virtual void | PrintAddress (std::ostream &os, ConstAddressIterator iter) const =0 |
Print one or more addresses. More... | |
virtual void | SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const =0 |
Serialize one or more addresses. More... | |
Private Member Functions | |
void | GetHeadTail (uint8_t *head, uint8_t &headlen, uint8_t *tail, uint8_t &taillen) const |
Get head and tail. More... | |
uint8_t | GetPrefixFlags (void) const |
Get the prefix flags. More... | |
bool | HasZeroTail (const uint8_t *tail, uint8_t taillen) const |
Check if the tail is empty. More... | |
Private Attributes | |
std::list< Address > | m_addressList |
Addresses container. More... | |
PbbAddressTlvBlock | m_addressTlvList |
PbbAddressTlv container. More... | |
std::list< uint8_t > | m_prefixList |
Prefixes container. More... | |
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 1838 of file packetbb.cc.
References NS_LOG_FUNCTION.
|
virtual |
Definition at line 1843 of file packetbb.cc.
References NS_LOG_FUNCTION.
Address ns3::PbbAddressBlock::AddressBack | ( | void | ) | const |
Definition at line 1900 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressBegin | ( | void | ) |
Definition at line 1851 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by GetHeadTail(), operator==(), Print(), and Serialize().
PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressBegin | ( | void | ) | const |
Definition at line 1858 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::AddressClear | ( | void | ) |
Removes all addresses from this block.
Definition at line 1950 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::AddressEmpty | ( | void | ) | const |
Definition at line 1886 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressEnd | ( | void | ) |
Definition at line 1865 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by GetHeadTail(), operator==(), Print(), and Serialize().
PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressEnd | ( | void | ) | const |
Definition at line 1872 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 1935 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 1942 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Address ns3::PbbAddressBlock::AddressFront | ( | void | ) | const |
Definition at line 1893 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 | ( | void | ) |
Removes an address from the back of this block.
Definition at line 1928 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::AddressPopFront | ( | void | ) |
Removes an address from the front of this block.
Definition at line 1914 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 1921 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
Referenced by Deserialize(), and PbbTestSuite::PbbTestSuite().
void ns3::PbbAddressBlock::AddressPushFront | ( | Address | address | ) |
Prepends an address to the front of this block.
address | the address to prepend. |
Definition at line 1907 of file packetbb.cc.
References m_addressList, and NS_LOG_FUNCTION.
int ns3::PbbAddressBlock::AddressSize | ( | void | ) | const |
Definition at line 1879 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 2324 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, PrefixPushBack(), and visualizer.core::start().
|
protectedpure virtual |
Deserialize one address.
buffer | the buffer to deserialize from |
Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.
Referenced by Deserialize().
|
protectedpure virtual |
Returns address length.
Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.
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 2487 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 2466 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 | ( | void | ) | const |
Definition at line 2192 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 2552 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 2460 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 2417 of file packetbb.cc.
References AddressBegin(), AddressEnd(), AddressSize(), m_addressTlvList, PrefixBegin(), PrefixEnd(), and PrefixSize().
uint8_t ns3::PbbAddressBlock::PrefixBack | ( | void | ) | const |
Definition at line 2008 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixBegin | ( | void | ) |
Definition at line 1959 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixBegin | ( | void | ) | const |
Definition at line 1966 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixClear | ( | void | ) |
Removes all prefixes from this block.
Definition at line 2064 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::PrefixEmpty | ( | void | ) | const |
Definition at line 1994 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixEnd | ( | void | ) |
Definition at line 1973 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixEnd | ( | void | ) | const |
Definition at line 1980 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 2050 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 2057 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
uint8_t ns3::PbbAddressBlock::PrefixFront | ( | void | ) | const |
Definition at line 2001 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 2043 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixPopBack | ( | void | ) |
Removes a prefix from the back of this block.
Definition at line 2036 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::PrefixPopFront | ( | void | ) |
Removes a prefix from the front of this block.
Definition at line 2022 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 2029 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
Referenced by Deserialize(), and PbbTestSuite::PbbTestSuite().
void ns3::PbbAddressBlock::PrefixPushFront | ( | uint8_t | prefix | ) |
Prepends a prefix to the front of this block.
prefix | the prefix to prepend. |
Definition at line 2015 of file packetbb.cc.
References m_prefixList, and NS_LOG_FUNCTION.
int ns3::PbbAddressBlock::PrefixSize | ( | void | ) | const |
Definition at line 1987 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 2378 of file packetbb.cc.
References NS_LOG_FUNCTION.
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 2385 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::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.
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 2240 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, NS_LOG_FUNCTION, PrefixBegin(), PrefixEnd(), PrefixFront(), PrefixSize(), ns3::PbbAddressTlvBlock::Serialize(), SerializeAddress(), visualizer.core::start(), 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::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.
Referenced by GetHeadTail(), and Serialize().
Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack | ( | void | ) |
Definition at line 2129 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Back(), m_addressTlvList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack | ( | void | ) | const |
Definition at line 2136 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Back(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvBegin | ( | void | ) |
Definition at line 2073 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Begin(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvBegin | ( | void | ) | const |
Definition at line 2080 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Begin(), m_addressTlvList, and NS_LOG_FUNCTION.
void ns3::PbbAddressBlock::TlvClear | ( | void | ) |
Removes all address TLVs from this block.
Definition at line 2186 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Clear(), m_addressTlvList, and NS_LOG_FUNCTION.
bool ns3::PbbAddressBlock::TlvEmpty | ( | void | ) | const |
Definition at line 2108 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Empty(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvEnd | ( | void | ) |
Definition at line 2087 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::End(), m_addressTlvList, and NS_LOG_FUNCTION.
PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvEnd | ( | void | ) | const |
Definition at line 2094 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::End(), 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 2171 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Erase(), 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 2178 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Erase(), m_addressTlvList, and NS_LOG_FUNCTION.
Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront | ( | void | ) |
Definition at line 2115 of file packetbb.cc.
References ns3::PbbAddressTlvBlock::Front(), m_addressTlvList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront | ( | void | ) | const |
Definition at line 2122 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 | ( | void | ) |
Removes an address TLV from the back of this message.
Definition at line 2164 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PopBack().
void ns3::PbbAddressBlock::TlvPopFront | ( | void | ) |
Removes an address TLV from the front of this message.
Definition at line 2150 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 2157 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PushBack().
Referenced by PbbTestSuite::PbbTestSuite().
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 2143 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::PushFront().
int ns3::PbbAddressBlock::TlvSize | ( | void | ) | const |
Definition at line 2101 of file packetbb.cc.
References m_addressTlvList, NS_LOG_FUNCTION, and ns3::PbbAddressTlvBlock::Size().
Addresses container.
Definition at line 1607 of file packetbb.h.
Referenced by AddressBack(), AddressBegin(), AddressClear(), AddressEmpty(), AddressEnd(), AddressErase(), AddressFront(), AddressPopBack(), AddressPopFront(), AddressPushBack(), AddressPushFront(), and AddressSize().
|
private |
PbbAddressTlv container.
Definition at line 1609 of file packetbb.h.
Referenced by Deserialize(), GetSerializedSize(), operator==(), Print(), Serialize(), TlvBack(), TlvBegin(), TlvClear(), TlvEmpty(), TlvEnd(), TlvErase(), TlvFront(), TlvPopBack(), TlvPopFront(), TlvPushBack(), TlvPushFront(), and TlvSize().
|
private |
Prefixes container.
Definition at line 1608 of file packetbb.h.
Referenced by PrefixBack(), PrefixBegin(), PrefixClear(), PrefixEmpty(), PrefixEnd(), PrefixErase(), PrefixFront(), PrefixInsert(), PrefixPopBack(), PrefixPopFront(), PrefixPushBack(), PrefixPushFront(), and PrefixSize().