A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::PbbAddressBlock Class Reference

An Address Block and its associated Address TLV Blocks. More...

#include <packetbb.h>

+ Inheritance diagram for ns3::PbbAddressBlock:
+ Collaboration diagram for ns3::PbbAddressBlock:

Public Types

typedef std::list< Address >
::iterator 
AddressIterator
typedef std::list< Address >
::const_iterator 
ConstAddressIterator
typedef std::list< uint8_t >
::const_iterator 
ConstPrefixIterator
typedef
PbbAddressTlvBlock::ConstIterator 
ConstTlvIterator
typedef std::list< uint8_t >
::iterator 
PrefixIterator
typedef
PbbAddressTlvBlock::Iterator 
TlvIterator

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.
bool AddressEmpty (void) const
AddressIterator AddressEnd (void)
ConstAddressIterator AddressEnd (void) const
AddressIterator AddressErase (AddressIterator position)
 Removes the address at the specified position.
AddressIterator AddressErase (AddressIterator first, AddressIterator last)
 Removes all addresses from [first, last) (includes first, not includes last).
Address AddressFront (void) const
AddressIterator AddressInsert (AddressIterator position, const Address value)
 Inserts an address at the specified position in this block.
void AddressPopBack (void)
 Removes an address from the back of this block.
void AddressPopFront (void)
 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 (void) const
void Deserialize (Buffer::Iterator &start)
 Deserializes an address block from the specified buffer.
uint32_t GetSerializedSize (void) const
bool operator!= (const PbbAddressBlock &other) const
bool operator== (const PbbAddressBlock &other) const
uint8_t PrefixBack (void) const
PrefixIterator PrefixBegin (void)
ConstPrefixIterator PrefixBegin (void) const
void PrefixClear (void)
 Removes all prefixes from this block.
bool PrefixEmpty (void) const
PrefixIterator PrefixEnd (void)
ConstPrefixIterator PrefixEnd (void) const
PrefixIterator PrefixErase (PrefixIterator position)
 Removes the prefix at the specified position.
PrefixIterator PrefixErase (PrefixIterator first, PrefixIterator last)
 Removes all prefixes from [first, last) (includes first, not includes last).
uint8_t PrefixFront (void) const
PrefixIterator PrefixInsert (PrefixIterator position, const uint8_t value)
 Inserts a prefix at the specified position in this block.
void PrefixPopBack (void)
 Removes a prefix from the back of this block.
void PrefixPopFront (void)
 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 (void) 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< PbbAddressTlvTlvBack (void)
const Ptr< PbbAddressTlvTlvBack (void) const
TlvIterator TlvBegin (void)
ConstTlvIterator TlvBegin (void) const
void TlvClear (void)
 Removes all address TLVs from this block.
bool TlvEmpty (void) const
TlvIterator TlvEnd (void)
ConstTlvIterator TlvEnd (void) const
TlvIterator TlvErase (TlvIterator position)
 Removes the address TLV at the specified position.
TlvIterator TlvErase (TlvIterator first, TlvIterator last)
 Removes all address TLVs from [first, last) (includes first, not includes last).
Ptr< PbbAddressTlvTlvFront (void)
const Ptr< PbbAddressTlvTlvFront (void) const
TlvIterator TlvInsert (TlvIterator position, const Ptr< PbbTlv > value)
 Inserts an address TLV at the specified position in this block.
void TlvPopBack (void)
 Removes an address TLV from the back of this message.
void TlvPopFront (void)
 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 (void) const
- Public Member Functions inherited from ns3::SimpleRefCount< PbbAddressBlock >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const

Protected Member Functions

virtual Address DeserializeAddress (uint8_t *buffer) const =0
virtual uint8_t GetAddressLength (void) const =0
virtual void PrintAddress (std::ostream &os, ConstAddressIterator iter) const =0
virtual void SerializeAddress (uint8_t *buffer, ConstAddressIterator iter) const =0

Private Member Functions

void GetHeadTail (uint8_t *head, uint8_t &headlen, uint8_t *tail, uint8_t &taillen) const
uint8_t GetPrefixFlags (void) const
bool HasZeroTail (const uint8_t *tail, uint8_t taillen) const

Private Attributes

std::list< Addressm_addressList
PbbAddressTlvBlock m_addressTlvList
std::list< uint8_t > m_prefixList

Additional Inherited Members

- Static Public Member Functions inherited from ns3::SimpleRefCount< PbbAddressBlock >
static void Cleanup (void)

Detailed Description

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 1089 of file packetbb.h.

Member Typedef Documentation

Definition at line 1092 of file packetbb.h.

Definition at line 1093 of file packetbb.h.

typedef std::list<uint8_t>::const_iterator ns3::PbbAddressBlock::ConstPrefixIterator

Definition at line 1096 of file packetbb.h.

typedef std::list<uint8_t>::iterator ns3::PbbAddressBlock::PrefixIterator

Definition at line 1095 of file packetbb.h.

Constructor & Destructor Documentation

ns3::PbbAddressBlock::PbbAddressBlock ( )

Definition at line 1674 of file packetbb.cc.

ns3::PbbAddressBlock::~PbbAddressBlock ( )
virtual

Definition at line 1678 of file packetbb.cc.

Member Function Documentation

Address ns3::PbbAddressBlock::AddressBack ( void  ) const
Returns
the last address in this block.

Definition at line 1727 of file packetbb.cc.

References m_addressList.

PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressBegin ( void  )
Returns
an iterator to the first address in this block.

Definition at line 1685 of file packetbb.cc.

References m_addressList.

Referenced by GetHeadTail(), operator==(), Print(), and Serialize().

+ Here is the caller graph for this function:

PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressBegin ( void  ) const
Returns
a const iterator to the first address in this block.

Definition at line 1691 of file packetbb.cc.

References m_addressList.

void ns3::PbbAddressBlock::AddressClear ( void  )

Removes all addresses from this block.

Definition at line 1770 of file packetbb.cc.

References m_addressList.

bool ns3::PbbAddressBlock::AddressEmpty ( void  ) const
Returns
true if there are no addresses in this block, false otherwise.

Definition at line 1715 of file packetbb.cc.

References m_addressList.

PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressEnd ( void  )
Returns
an iterator to the last address in this block.

Definition at line 1697 of file packetbb.cc.

References m_addressList.

Referenced by GetHeadTail(), operator==(), Print(), and Serialize().

+ Here is the caller graph for this function:

PbbAddressBlock::ConstAddressIterator ns3::PbbAddressBlock::AddressEnd ( void  ) const
Returns
a const iterator to the last address in this block.

Definition at line 1703 of file packetbb.cc.

References m_addressList.

PbbAddressBlock::AddressIterator ns3::PbbAddressBlock::AddressErase ( PbbAddressBlock::AddressIterator  position)

Removes the address at the specified position.

Parameters
positionan Iterator pointing to the address to erase.
Returns
an iterator pointing to the next address in the block.

Definition at line 1757 of file packetbb.cc.

References m_addressList.

Removes all addresses from [first, last) (includes first, not includes last).

Parameters
firstan Iterator pointing to the first address to erase (inclusive).
lastan Iterator pointing to the element past the last address to erase.
Returns
an iterator pointing to the next address in the block.

Definition at line 1763 of file packetbb.cc.

References m_addressList.

Address ns3::PbbAddressBlock::AddressFront ( void  ) const
Returns
the first address in this block.

Definition at line 1721 of file packetbb.cc.

References m_addressList.

AddressIterator ns3::PbbAddressBlock::AddressInsert ( AddressIterator  position,
const Address  value 
)

Inserts an address at the specified position in this block.

Parameters
positionan Iterator pointing to the position in this block to insert the address.
valuethe address to insert.
Returns
An iterator pointing to the newly inserted address.
void ns3::PbbAddressBlock::AddressPopBack ( void  )

Removes an address from the back of this block.

Definition at line 1751 of file packetbb.cc.

References m_addressList.

void ns3::PbbAddressBlock::AddressPopFront ( void  )

Removes an address from the front of this block.

Definition at line 1739 of file packetbb.cc.

References m_addressList.

void ns3::PbbAddressBlock::AddressPushBack ( Address  address)

Appends an address to the back of this block.

Parameters
addressthe address to append.

Definition at line 1745 of file packetbb.cc.

References m_addressList.

Referenced by Deserialize(), and PbbTestSuite::PbbTestSuite().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::AddressPushFront ( Address  address)

Prepends an address to the front of this block.

Parameters
addressthe address to prepend.

Definition at line 1733 of file packetbb.cc.

References m_addressList.

int ns3::PbbAddressBlock::AddressSize ( void  ) const
Returns
the number of addresses in this block.

Definition at line 1709 of file packetbb.cc.

References m_addressList.

Referenced by GetSerializedSize(), operator==(), and Serialize().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::Deserialize ( Buffer::Iterator start)

Deserializes an address block from the specified buffer.

Parameters
starta 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 2108 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, PrefixPushBack(), ns3::Buffer::Iterator::Read(), and ns3::Buffer::Iterator::ReadU8().

Referenced by ns3::PbbMessageIpv4::AddressBlockDeserialize(), ns3::PbbMessageIpv6::AddressBlockDeserialize(), ns3::PbbAddressBlockIpv4::DeserializeAddress(), and ns3::PbbAddressBlockIpv6::DeserializeAddress().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual Address ns3::PbbAddressBlock::DeserializeAddress ( uint8_t *  buffer) const
protectedpure virtual

Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.

Referenced by Deserialize().

+ Here is the caller graph for this function:

virtual uint8_t ns3::PbbAddressBlock::GetAddressLength ( void  ) const
protectedpure virtual

Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.

Referenced by Deserialize(), GetHeadTail(), GetSerializedSize(), and Serialize().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::GetHeadTail ( uint8_t *  head,
uint8_t &  headlen,
uint8_t *  tail,
uint8_t &  taillen 
) const
private

Definition at line 2267 of file packetbb.cc.

References AddressBegin(), AddressEnd(), GetAddressLength(), and SerializeAddress().

Referenced by GetSerializedSize(), and Serialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint8_t ns3::PbbAddressBlock::GetPrefixFlags ( void  ) const
private

Definition at line 2247 of file packetbb.cc.

References AHAS_MULTI_PRE_LEN, AHAS_SINGLE_PRE_LEN, and PrefixSize().

Referenced by Serialize().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint32_t ns3::PbbAddressBlock::GetSerializedSize ( void  ) const
Returns
The size (in bytes) needed to serialize this address block.

Definition at line 1978 of file packetbb.cc.

References AddressSize(), GetAddressLength(), GetHeadTail(), ns3::PbbAddressTlvBlock::GetSerializedSize(), HasZeroTail(), m_addressTlvList, and PrefixSize().

+ Here is the call graph for this function:

bool ns3::PbbAddressBlock::HasZeroTail ( const uint8_t *  tail,
uint8_t  taillen 
) const
private

Definition at line 2330 of file packetbb.cc.

Referenced by GetSerializedSize(), and Serialize().

+ Here is the caller graph for this function:

bool ns3::PbbAddressBlock::operator!= ( const PbbAddressBlock other) const

Definition at line 2241 of file packetbb.cc.

bool ns3::PbbAddressBlock::operator== ( const PbbAddressBlock other) const

Definition at line 2198 of file packetbb.cc.

References AddressBegin(), AddressEnd(), AddressSize(), m_addressTlvList, PrefixBegin(), PrefixEnd(), and PrefixSize().

+ Here is the call graph for this function:

uint8_t ns3::PbbAddressBlock::PrefixBack ( void  ) const
Returns
the last prefix in this block.

Definition at line 1820 of file packetbb.cc.

References m_prefixList.

PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixBegin ( void  )
Returns
an iterator to the first prefix in this block.

Definition at line 1778 of file packetbb.cc.

References m_prefixList.

Referenced by operator==(), Print(), and Serialize().

+ Here is the caller graph for this function:

PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixBegin ( void  ) const
Returns
a const iterator to the first prefix in this block.

Definition at line 1784 of file packetbb.cc.

References m_prefixList.

void ns3::PbbAddressBlock::PrefixClear ( void  )

Removes all prefixes from this block.

Definition at line 1868 of file packetbb.cc.

References m_prefixList.

bool ns3::PbbAddressBlock::PrefixEmpty ( void  ) const
Returns
true if there are no prefixes in this block, false otherwise.

Definition at line 1808 of file packetbb.cc.

References m_prefixList.

PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixEnd ( void  )
Returns
an iterator to the last prefix in this block.

Definition at line 1790 of file packetbb.cc.

References m_prefixList.

Referenced by operator==(), Print(), and Serialize().

+ Here is the caller graph for this function:

PbbAddressBlock::ConstPrefixIterator ns3::PbbAddressBlock::PrefixEnd ( void  ) const
Returns
a const iterator to the last prefix in this block.

Definition at line 1796 of file packetbb.cc.

References m_prefixList.

PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixErase ( PbbAddressBlock::PrefixIterator  position)

Removes the prefix at the specified position.

Parameters
positionan Iterator pointing to the prefix to erase.
Returns
an iterator pointing to the next prefix in the block.

Definition at line 1856 of file packetbb.cc.

References m_prefixList.

Removes all prefixes from [first, last) (includes first, not includes last).

Parameters
firstan Iterator pointing to the first prefix to erase (inclusive).
lastan Iterator pointing to the element past the last prefix to erase.
Returns
an iterator pointing to the next prefix in the block.

Definition at line 1862 of file packetbb.cc.

References m_prefixList.

uint8_t ns3::PbbAddressBlock::PrefixFront ( void  ) const
Returns
the first prefix in this block.

Definition at line 1814 of file packetbb.cc.

References m_prefixList.

Referenced by Serialize().

+ Here is the caller graph for this function:

PbbAddressBlock::PrefixIterator ns3::PbbAddressBlock::PrefixInsert ( PbbAddressBlock::PrefixIterator  position,
const uint8_t  value 
)

Inserts a prefix at the specified position in this block.

Parameters
positionan Iterator pointing to the position in this block to insert the prefix.
valuethe prefix to insert.
Returns
An iterator pointing to the newly inserted prefix.

Definition at line 1850 of file packetbb.cc.

References m_prefixList.

void ns3::PbbAddressBlock::PrefixPopBack ( void  )

Removes a prefix from the back of this block.

Definition at line 1844 of file packetbb.cc.

References m_prefixList.

void ns3::PbbAddressBlock::PrefixPopFront ( void  )

Removes a prefix from the front of this block.

Definition at line 1832 of file packetbb.cc.

References m_prefixList.

void ns3::PbbAddressBlock::PrefixPushBack ( uint8_t  prefix)

Appends a prefix to the back of this block.

Parameters
prefixthe prefix to append.

Definition at line 1838 of file packetbb.cc.

References m_prefixList.

Referenced by Deserialize(), and PbbTestSuite::PbbTestSuite().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::PrefixPushFront ( uint8_t  prefix)

Prepends a prefix to the front of this block.

Parameters
prefixthe prefix to prepend.

Definition at line 1826 of file packetbb.cc.

References m_prefixList.

int ns3::PbbAddressBlock::PrefixSize ( void  ) const
Returns
the number of prefixes in this block.

Definition at line 1802 of file packetbb.cc.

References m_prefixList.

Referenced by GetPrefixFlags(), GetSerializedSize(), operator==(), and Serialize().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::Print ( std::ostream &  os) const

Pretty-prints the contents of this address block.

Parameters
osa stream object to print to.

Definition at line 2161 of file packetbb.cc.

void ns3::PbbAddressBlock::Print ( std::ostream &  os,
int  level 
) const

Pretty-prints the contents of this address block, with specified indentation.

Parameters
osa stream object to print to.
levellevel of indentation.

This probably never needs to be called by users. This is used when recursively printing sub-objects.

Definition at line 2167 of file packetbb.cc.

References AddressBegin(), AddressEnd(), m_addressTlvList, PrefixBegin(), PrefixEnd(), ns3::PbbAddressTlvBlock::Print(), and PrintAddress().

+ Here is the call graph for this function:

virtual void ns3::PbbAddressBlock::PrintAddress ( std::ostream &  os,
ConstAddressIterator  iter 
) const
protectedpure virtual

Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.

Referenced by Print().

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::Serialize ( Buffer::Iterator start) const

Serializes this address block into the specified buffer.

Parameters
starta 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 2025 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(), PrefixBegin(), PrefixEnd(), PrefixFront(), PrefixSize(), ns3::PbbAddressTlvBlock::Serialize(), SerializeAddress(), visualizer.core::start(), ns3::Buffer::Iterator::Write(), and ns3::Buffer::Iterator::WriteU8().

+ Here is the call graph for this function:

virtual void ns3::PbbAddressBlock::SerializeAddress ( uint8_t *  buffer,
ConstAddressIterator  iter 
) const
protectedpure virtual

Implemented in ns3::PbbAddressBlockIpv6, and ns3::PbbAddressBlockIpv4.

Referenced by GetHeadTail(), and Serialize().

+ Here is the caller graph for this function:

Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack ( void  )
Returns
a smart pointer to the last address TLV in this message.

Definition at line 1924 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Back(), and m_addressTlvList.

+ Here is the call graph for this function:

const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvBack ( void  ) const
Returns
a const smart pointer to the last address TLV in this message.

Definition at line 1930 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Back(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvBegin ( void  )
Returns
an iterator to the first address TLV in this block.

Definition at line 1876 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Begin(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvBegin ( void  ) const
Returns
a const iterator to the first address TLV in this block.

Definition at line 1882 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Begin(), and m_addressTlvList.

+ Here is the call graph for this function:

void ns3::PbbAddressBlock::TlvClear ( void  )

Removes all address TLVs from this block.

Definition at line 1973 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Clear(), and m_addressTlvList.

+ Here is the call graph for this function:

bool ns3::PbbAddressBlock::TlvEmpty ( void  ) const
Returns
true if there are no address TLVs in this block, false otherwise.

Definition at line 1906 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Empty(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvEnd ( void  )
Returns
an iterator to the last address TLV in this block.

Definition at line 1888 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::End(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::ConstTlvIterator ns3::PbbAddressBlock::TlvEnd ( void  ) const
Returns
a const iterator to the last address TLV in this block.

Definition at line 1894 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::End(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvErase ( PbbAddressBlock::TlvIterator  position)

Removes the address TLV at the specified position.

Parameters
positionan Iterator pointing to the address TLV to erase.
Returns
an iterator pointing to the next address TLV in the block.

Definition at line 1960 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Erase(), and m_addressTlvList.

+ Here is the call graph for this function:

PbbAddressBlock::TlvIterator ns3::PbbAddressBlock::TlvErase ( PbbAddressBlock::TlvIterator  first,
PbbAddressBlock::TlvIterator  last 
)

Removes all address TLVs from [first, last) (includes first, not includes last).

Parameters
firstan Iterator pointing to the first address TLV to erase (inclusive).
lastan Iterator pointing to the element past the last address TLV to erase.
Returns
an iterator pointing to the next address TLV in the message.

Definition at line 1966 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Erase(), and m_addressTlvList.

+ Here is the call graph for this function:

Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront ( void  )
Returns
a smart pointer to the first address TLV in this block.

Definition at line 1912 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Front(), and m_addressTlvList.

+ Here is the call graph for this function:

const Ptr< PbbAddressTlv > ns3::PbbAddressBlock::TlvFront ( void  ) const
Returns
a const smart pointer to the first address TLV in this message.

Definition at line 1918 of file packetbb.cc.

References ns3::PbbAddressTlvBlock::Front(), and m_addressTlvList.

+ Here is the call graph for this function:

TlvIterator ns3::PbbAddressBlock::TlvInsert ( TlvIterator  position,
const Ptr< PbbTlv value 
)

Inserts an address TLV at the specified position in this block.

Parameters
positionan Iterator pointing to the position in this block to insert the address TLV.
valuethe prefix to insert.
Returns
An iterator pointing to the newly inserted address TLV.
void ns3::PbbAddressBlock::TlvPopBack ( void  )

Removes an address TLV from the back of this message.

Definition at line 1954 of file packetbb.cc.

References m_addressTlvList, and ns3::PbbAddressTlvBlock::PopBack().

+ Here is the call graph for this function:

void ns3::PbbAddressBlock::TlvPopFront ( void  )

Removes an address TLV from the front of this message.

Definition at line 1942 of file packetbb.cc.

References m_addressTlvList, and ns3::PbbAddressTlvBlock::PopFront().

+ Here is the call graph for this function:

void ns3::PbbAddressBlock::TlvPushBack ( Ptr< PbbAddressTlv address)

Appends an address TLV to the back of this message.

Parameters
addressa smart pointer to the address TLV to append.

Definition at line 1948 of file packetbb.cc.

References m_addressTlvList, and ns3::PbbAddressTlvBlock::PushBack().

Referenced by PbbTestSuite::PbbTestSuite().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::PbbAddressBlock::TlvPushFront ( Ptr< PbbAddressTlv address)

Prepends an address TLV to the front of this message.

Parameters
addressa smart pointer to the address TLV to prepend.

Definition at line 1936 of file packetbb.cc.

References m_addressTlvList, and ns3::PbbAddressTlvBlock::PushFront().

+ Here is the call graph for this function:

int ns3::PbbAddressBlock::TlvSize ( void  ) const
Returns
the number of address TLVs in this block.

Definition at line 1900 of file packetbb.cc.

References m_addressTlvList, and ns3::PbbAddressTlvBlock::Size().

+ Here is the call graph for this function:

Member Data Documentation


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