A block of Address TLVs (PbbAddressTlv). More...
#include "packetbb.h"
Collaboration diagram for ns3::PbbAddressTlvBlock:Public Types | |
| typedef std::list< Ptr< PbbAddressTlv > >::const_iterator | ConstIterator |
| PbbAddressTlv const iterator for PbbAddressTlvBlock. | |
| typedef std::list< Ptr< PbbAddressTlv > >::iterator | Iterator |
| PbbAddressTlv iterator for PbbAddressTlvBlock. | |
Public Member Functions | |
| PbbAddressTlvBlock () | |
| ~PbbAddressTlvBlock () | |
| Ptr< PbbAddressTlv > | Back () const |
| Iterator | Begin () |
| ConstIterator | Begin () const |
| void | Clear () |
| Removes all Address TLVs from this block. | |
| void | Deserialize (Buffer::Iterator &start) |
| Deserializes a block from the specified buffer. | |
| bool | Empty () const |
| Iterator | End () |
| ConstIterator | End () const |
| Iterator | Erase (Iterator first, Iterator last) |
| Removes all Address TLVs from [first, last) (includes first, not includes last). | |
| Iterator | Erase (Iterator position) |
| Removes the Address TLV at the specified position. | |
| Ptr< PbbAddressTlv > | Front () const |
| uint32_t | GetSerializedSize () const |
| Iterator | Insert (Iterator position, const Ptr< PbbAddressTlv > tlv) |
| Inserts an Address TLV at the specified position in this block. | |
| bool | operator!= (const PbbAddressTlvBlock &other) const |
| Inequality operator for PbbAddressTlvBlock. | |
| bool | operator== (const PbbAddressTlvBlock &other) const |
| Equality operator for PbbAddressTlvBlock. | |
| void | PopBack () |
| Removes an Address TLV from the back of this block. | |
| void | PopFront () |
| Removes an AddressTLV from the front of this block. | |
| void | Print (std::ostream &os) const |
| Pretty-prints the contents of this block. | |
| void | Print (std::ostream &os, int level) const |
| Pretty-prints the contents of this block, with specified indentation. | |
| void | PushBack (Ptr< PbbAddressTlv > tlv) |
| Appends an Address TLV to the back of this block. | |
| void | PushFront (Ptr< PbbAddressTlv > tlv) |
| Prepends an Address TLV to the front of this block. | |
| void | Serialize (Buffer::Iterator &start) const |
| Serializes this block into the specified buffer. | |
| int | Size () const |
Private Attributes | |
| std::list< Ptr< PbbAddressTlv > > | m_tlvList |
| PbbAddressTlv container. | |
A block of Address TLVs (PbbAddressTlv).
Acts similar to a C++ STL container.
Definition at line 208 of file packetbb.h.
| typedef std::list<Ptr<PbbAddressTlv>>::const_iterator ns3::PbbAddressTlvBlock::ConstIterator |
PbbAddressTlv const iterator for PbbAddressTlvBlock.
Definition at line 214 of file packetbb.h.
| typedef std::list<Ptr<PbbAddressTlv>>::iterator ns3::PbbAddressTlvBlock::Iterator |
PbbAddressTlv iterator for PbbAddressTlvBlock.
Definition at line 212 of file packetbb.h.
| ns3::PbbAddressTlvBlock::PbbAddressTlvBlock | ( | ) |
Definition at line 292 of file packetbb.cc.
References NS_LOG_FUNCTION.
Referenced by operator!=(), and operator==().
Here is the caller graph for this function:| ns3::PbbAddressTlvBlock::~PbbAddressTlvBlock | ( | ) |
Definition at line 297 of file packetbb.cc.
References Clear(), and NS_LOG_FUNCTION.
Here is the call graph for this function:| Ptr< PbbAddressTlv > ns3::PbbAddressTlvBlock::Back | ( | ) | const |
Definition at line 353 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| PbbAddressTlvBlock::Iterator ns3::PbbAddressTlvBlock::Begin | ( | ) |
Definition at line 304 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
Referenced by Clear(), GetSerializedSize(), operator==(), Print(), and Serialize().
Here is the caller graph for this function:| PbbAddressTlvBlock::ConstIterator ns3::PbbAddressTlvBlock::Begin | ( | ) | const |
Definition at line 311 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| void ns3::PbbAddressTlvBlock::Clear | ( | ) |
Removes all Address TLVs from this block.
Definition at line 409 of file packetbb.cc.
References Begin(), End(), m_tlvList, and NS_LOG_FUNCTION.
Referenced by ~PbbAddressTlvBlock().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::PbbAddressTlvBlock::Deserialize | ( | Buffer::Iterator & | start | ) |
Deserializes a 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 456 of file packetbb.cc.
References ns3::Create(), NS_LOG_FUNCTION, and PushBack().
Here is the call graph for this function:| bool ns3::PbbAddressTlvBlock::Empty | ( | ) | const |
Definition at line 339 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
Referenced by Serialize().
Here is the caller graph for this function:| PbbAddressTlvBlock::Iterator ns3::PbbAddressTlvBlock::End | ( | ) |
Definition at line 318 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
Referenced by Clear(), GetSerializedSize(), operator==(), Print(), and Serialize().
Here is the caller graph for this function:| PbbAddressTlvBlock::ConstIterator ns3::PbbAddressTlvBlock::End | ( | ) | const |
Definition at line 325 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| PbbAddressTlvBlock::Iterator ns3::PbbAddressTlvBlock::Erase | ( | PbbAddressTlvBlock::Iterator | first, |
| PbbAddressTlvBlock::Iterator | 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 402 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| PbbAddressTlvBlock::Iterator ns3::PbbAddressTlvBlock::Erase | ( | PbbAddressTlvBlock::Iterator | position | ) |
Removes the Address TLV at the specified position.
Definition at line 395 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| Ptr< PbbAddressTlv > ns3::PbbAddressTlvBlock::Front | ( | ) | const |
Definition at line 346 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| uint32_t ns3::PbbAddressTlvBlock::GetSerializedSize | ( | ) | const |
Definition at line 420 of file packetbb.cc.
References Begin(), End(), and NS_LOG_FUNCTION.
Here is the call graph for this function:| PbbAddressTlvBlock::Iterator ns3::PbbAddressTlvBlock::Insert | ( | PbbAddressTlvBlock::Iterator | position, |
| const Ptr< PbbAddressTlv > | tlv ) |
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. |
| tlv | a smart pointer to the Address TLV to insert. |
Definition at line 388 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| bool ns3::PbbAddressTlvBlock::operator!= | ( | const PbbAddressTlvBlock & | other | ) | const |
Inequality operator for PbbAddressTlvBlock.
| other | PbbAddressTlvBlock to compare to this one |
Definition at line 524 of file packetbb.cc.
References PbbAddressTlvBlock().
Here is the call graph for this function:| bool ns3::PbbAddressTlvBlock::operator== | ( | const PbbAddressTlvBlock & | other | ) | const |
Equality operator for PbbAddressTlvBlock.
| other | PbbAddressTlvBlock to compare to this one |
Definition at line 504 of file packetbb.cc.
References PbbAddressTlvBlock(), Begin(), End(), and Size().
Here is the call graph for this function:| void ns3::PbbAddressTlvBlock::PopBack | ( | ) |
Removes an Address TLV from the back of this block.
Definition at line 381 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| void ns3::PbbAddressTlvBlock::PopFront | ( | ) |
Removes an AddressTLV from the front of this block.
Definition at line 367 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| void ns3::PbbAddressTlvBlock::Print | ( | std::ostream & | os | ) | const |
Pretty-prints the contents of this block.
| os | a stream object to print to. |
Definition at line 474 of file packetbb.cc.
References NS_LOG_FUNCTION, and Print().
Referenced by Print().
Here is the call graph for this function:
Here is the caller graph for this function:| void ns3::PbbAddressTlvBlock::Print | ( | std::ostream & | os, |
| int | level ) const |
Pretty-prints the contents of this 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 481 of file packetbb.cc.
References Begin(), End(), NS_LOG_FUNCTION, and Size().
Here is the call graph for this function:| void ns3::PbbAddressTlvBlock::PushBack | ( | Ptr< PbbAddressTlv > | tlv | ) |
Appends an Address TLV to the back of this block.
| tlv | a smart pointer to the Address TLV to append. |
Definition at line 374 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
Referenced by Deserialize().
Here is the caller graph for this function:| void ns3::PbbAddressTlvBlock::PushFront | ( | Ptr< PbbAddressTlv > | tlv | ) |
Prepends an Address TLV to the front of this block.
| tlv | a smart pointer to the Address TLV to prepend. |
Definition at line 360 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
| void ns3::PbbAddressTlvBlock::Serialize | ( | Buffer::Iterator & | start | ) | const |
Serializes this 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 serialized by their containing packet.
Definition at line 433 of file packetbb.cc.
References Begin(), Empty(), End(), NS_LOG_FUNCTION, and ns3::Buffer::Iterator::WriteHtonU16().
Here is the call graph for this function:| int ns3::PbbAddressTlvBlock::Size | ( | ) | const |
Definition at line 332 of file packetbb.cc.
References m_tlvList, and NS_LOG_FUNCTION.
Referenced by operator==(), and Print().
Here is the caller graph for this function:
|
private |
PbbAddressTlv container.
Definition at line 367 of file packetbb.h.
Referenced by Back(), Begin(), Begin(), Clear(), Empty(), End(), End(), Erase(), Erase(), Front(), Insert(), PopBack(), PopFront(), PushBack(), PushFront(), and Size().