A message within a PbbPacket packet. More...
#include "packetbb.h"
Public Types | |
typedef std::list< Ptr< PbbAddressBlock > >::iterator | AddressBlockIterator |
PbbAddressBlock iterator. | |
typedef std::list< Ptr< PbbAddressBlock > >::const_iterator | ConstAddressBlockIterator |
PbbAddressBlock const iterator. | |
typedef std::list< Ptr< PbbTlv > >::const_iterator | ConstTlvIterator |
PbbTlv const iterator. | |
typedef std::list< Ptr< PbbTlv > >::iterator | TlvIterator |
PbbTlv iterator. | |
Public Member Functions | |
PbbMessage () | |
virtual | ~PbbMessage () |
Ptr< PbbAddressBlock > | AddressBlockBack () |
const Ptr< PbbAddressBlock > | AddressBlockBack () const |
AddressBlockIterator | AddressBlockBegin () |
ConstAddressBlockIterator | AddressBlockBegin () const |
void | AddressBlockClear () |
Removes all address blocks from this message. | |
bool | AddressBlockEmpty () const |
AddressBlockIterator | AddressBlockEnd () |
ConstAddressBlockIterator | AddressBlockEnd () const |
AddressBlockIterator | AddressBlockErase (AddressBlockIterator first, AddressBlockIterator last) |
Removes all address blocks from [first, last) (includes first, not includes last). | |
AddressBlockIterator | AddressBlockErase (AddressBlockIterator position) |
Removes the address block at the specified position. | |
Ptr< PbbAddressBlock > | AddressBlockFront () |
const Ptr< PbbAddressBlock > | AddressBlockFront () const |
void | AddressBlockPopBack () |
Removes an address block from the back of this message. | |
void | AddressBlockPopFront () |
Removes an address block from the front of this message. | |
void | AddressBlockPushBack (Ptr< PbbAddressBlock > block) |
Appends an address block to the front of this message. | |
void | AddressBlockPushFront (Ptr< PbbAddressBlock > block) |
Prepends an address block to the front of this message. | |
int | AddressBlockSize () const |
void | Deserialize (Buffer::Iterator &start) |
Deserializes a message from the specified buffer. | |
uint8_t | GetHopCount () const |
uint8_t | GetHopLimit () const |
Address | GetOriginatorAddress () const |
uint16_t | GetSequenceNumber () const |
uint32_t | GetSerializedSize () const |
uint8_t | GetType () const |
bool | HasHopCount () const |
Tests whether or not this message has a hop count. | |
bool | HasHopLimit () const |
Tests whether or not this message has a hop limit. | |
bool | HasOriginatorAddress () const |
Tests whether or not this message has an originator address. | |
bool | HasSequenceNumber () const |
Tests whether or not this message has a sequence number. | |
bool | operator!= (const PbbMessage &other) const |
Inequality operator for PbbMessage. | |
bool | operator== (const PbbMessage &other) const |
Equality operator for PbbMessage. | |
void | Print (std::ostream &os) const |
Pretty-prints the contents of this message. | |
void | Print (std::ostream &os, int level) const |
Pretty-prints the contents of this message, with specified indentation. | |
void | Serialize (Buffer::Iterator &start) const |
Serializes this message into the specified buffer. | |
void | SetHopCount (uint8_t hopcount) |
Sets the current number of hops this message has traveled. | |
void | SetHopLimit (uint8_t hoplimit) |
Sets the maximum number of hops this message should travel. | |
void | SetOriginatorAddress (Address address) |
Sets the address for the node that created this packet. | |
void | SetSequenceNumber (uint16_t seqnum) |
Sets the sequence number of this message. | |
void | SetType (uint8_t type) |
Sets the type for this message. | |
Ptr< PbbTlv > | TlvBack () |
const Ptr< PbbTlv > | TlvBack () const |
TlvIterator | TlvBegin () |
ConstTlvIterator | TlvBegin () const |
void | TlvClear () |
Removes all message TLVs from this block. | |
bool | TlvEmpty () const |
TlvIterator | TlvEnd () |
ConstTlvIterator | TlvEnd () const |
TlvIterator | TlvErase (TlvIterator first, TlvIterator last) |
Removes all message TLVs from [first, last) (includes first, not includes last). | |
TlvIterator | TlvErase (TlvIterator position) |
Removes the message TLV at the specified position. | |
Ptr< PbbTlv > | TlvFront () |
const Ptr< PbbTlv > | TlvFront () const |
void | TlvPopBack () |
Removes a message TLV from the back of this message. | |
void | TlvPopFront () |
Removes a message TLV from the front of this message. | |
void | TlvPushBack (Ptr< PbbTlv > tlv) |
Appends a message TLV to the back of this message. | |
void | TlvPushFront (Ptr< PbbTlv > tlv) |
Prepends a message TLV to the front of this message. | |
int | TlvSize () const |
![]() | |
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. | |
Static Public Member Functions | |
static Ptr< PbbMessage > | DeserializeMessage (Buffer::Iterator &start) |
Deserializes a message, returning the correct object depending on whether it is an IPv4 message or an IPv6 message. | |
Protected Member Functions | |
virtual Ptr< PbbAddressBlock > | AddressBlockDeserialize (Buffer::Iterator &start) const =0 |
Deserialize an address block. | |
virtual Address | DeserializeOriginatorAddress (Buffer::Iterator &start) const =0 |
Deserialize the originator address. | |
virtual PbbAddressLength | GetAddressLength () const =0 |
Returns address length (IPV4 3 or IPV6 15) | |
virtual void | PrintOriginatorAddress (std::ostream &os) const =0 |
Print the originator address. | |
virtual void | SerializeOriginatorAddress (Buffer::Iterator &start) const =0 |
Serialize the originator address. | |
Private Attributes | |
std::list< Ptr< PbbAddressBlock > > | m_addressBlockList |
PbbAddressBlock container. | |
PbbAddressLength | m_addrSize |
the address size | |
bool | m_hasHopCount |
Hop count present. | |
bool | m_hasHopLimit |
Hop limit present. | |
bool | m_hasOriginatorAddress |
Originator address present. | |
bool | m_hasSequenceNumber |
Sequence number present. | |
uint8_t | m_hopCount |
Hop count. | |
uint8_t | m_hopLimit |
Hop limit. | |
Address | m_originatorAddress |
originator address | |
uint16_t | m_sequenceNumber |
Sequence number. | |
PbbTlvBlock | m_tlvList |
PbbTlvBlock. | |
uint8_t | m_type |
the type for this message | |
A message within a PbbPacket packet.
There may be any number of messages in one packet packet. This is a pure virtual base class, when creating a message, you should instantiate either PbbMessageIpv4 or PbbMessageIpv6.
Definition at line 695 of file packetbb.h.
typedef std::list<Ptr<PbbAddressBlock>>::iterator ns3::PbbMessage::AddressBlockIterator |
PbbAddressBlock iterator.
Definition at line 703 of file packetbb.h.
typedef std::list<Ptr<PbbAddressBlock>>::const_iterator ns3::PbbMessage::ConstAddressBlockIterator |
PbbAddressBlock const iterator.
Definition at line 705 of file packetbb.h.
typedef std::list<Ptr<PbbTlv>>::const_iterator ns3::PbbMessage::ConstTlvIterator |
PbbTlv const iterator.
Definition at line 701 of file packetbb.h.
typedef std::list<Ptr<PbbTlv>>::iterator ns3::PbbMessage::TlvIterator |
PbbTlv iterator.
Definition at line 699 of file packetbb.h.
ns3::PbbMessage::PbbMessage | ( | ) |
Definition at line 1012 of file packetbb.cc.
References ns3::IPV4, m_addrSize, m_hasHopCount, m_hasHopLimit, m_hasOriginatorAddress, m_hasSequenceNumber, and NS_LOG_FUNCTION.
|
virtual |
Definition at line 1023 of file packetbb.cc.
References AddressBlockClear(), and NS_LOG_FUNCTION.
Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockBack | ( | ) |
Definition at line 1322 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockBack | ( | ) | const |
Definition at line 1329 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockBegin | ( | ) |
Definition at line 1266 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by AddressBlockClear(), GetSerializedSize(), operator==(), Print(), and Serialize().
PbbMessage::ConstAddressBlockIterator ns3::PbbMessage::AddressBlockBegin | ( | ) | const |
Definition at line 1273 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockClear | ( | ) |
Removes all address blocks from this message.
Definition at line 1379 of file packetbb.cc.
References AddressBlockBegin(), AddressBlockEnd(), m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by ~PbbMessage().
|
protectedpure virtual |
Deserialize an address block.
start | the buffer iterator start |
Implemented in ns3::PbbMessageIpv4, and ns3::PbbMessageIpv6.
Referenced by Deserialize().
bool ns3::PbbMessage::AddressBlockEmpty | ( | ) | const |
Definition at line 1301 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockEnd | ( | ) |
Definition at line 1280 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by AddressBlockClear(), GetSerializedSize(), operator==(), Print(), and Serialize().
PbbMessage::ConstAddressBlockIterator ns3::PbbMessage::AddressBlockEnd | ( | ) | const |
Definition at line 1287 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockErase | ( | PbbMessage::AddressBlockIterator | first, |
PbbMessage::AddressBlockIterator | last ) |
Removes all address blocks from [first, last) (includes first, not includes last).
first | an Iterator pointing to the first address block to erase (inclusive). |
last | an Iterator pointing to the element past the last address block to erase. |
Definition at line 1371 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockErase | ( | PbbMessage::AddressBlockIterator | position | ) |
Removes the address block at the specified position.
position | an Iterator pointing to the address block to erase. |
Definition at line 1364 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockFront | ( | ) |
Definition at line 1308 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockFront | ( | ) | const |
Definition at line 1315 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockPopBack | ( | ) |
Removes an address block from the back of this message.
Definition at line 1357 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockPopFront | ( | ) |
Removes an address block from the front of this message.
Definition at line 1343 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockPushBack | ( | Ptr< PbbAddressBlock > | block | ) |
Appends an address block to the front of this message.
block | a smart pointer to the address block to append. |
Definition at line 1350 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbMessage::AddressBlockPushFront | ( | Ptr< PbbAddressBlock > | block | ) |
Prepends an address block to the front of this message.
block | a smart pointer to the address block to prepend. |
Definition at line 1336 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
int ns3::PbbMessage::AddressBlockSize | ( | ) | const |
Definition at line 1294 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by operator==().
void ns3::PbbMessage::Deserialize | ( | Buffer::Iterator & | start | ) |
Deserializes a message 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 1514 of file packetbb.cc.
References AddressBlockDeserialize(), AddressBlockPushBack(), ns3::PbbTlvBlock::Deserialize(), DeserializeOriginatorAddress(), m_tlvList, MHAS_HOP_COUNT, MHAS_HOP_LIMIT, MHAS_ORIG, MHAS_SEQ_NUM, NS_LOG_FUNCTION, SetHopCount(), SetHopLimit(), SetOriginatorAddress(), SetSequenceNumber(), and SetType().
|
static |
Deserializes a message, returning the correct object depending on whether it is an IPv4 message or an IPv6 message.
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 1482 of file packetbb.cc.
References ns3::Create(), ns3::IPV4, ns3::IPV6, and NS_LOG_FUNCTION.
Referenced by ns3::PbbPacket::Deserialize().
|
protectedpure virtual |
Deserialize the originator address.
start | the buffer iterator start |
Implemented in ns3::PbbMessageIpv4, and ns3::PbbMessageIpv6.
Referenced by Deserialize().
|
protectedpure virtual |
Returns address length (IPV4 3 or IPV6 15)
Returns message size in bytes - 1 IPv4 = 4 - 1 = 3, IPv6 = 16 - 1 = 15
Implemented in ns3::PbbMessageIpv4, and ns3::PbbMessageIpv6.
Definition at line 1044 of file packetbb.cc.
References m_addrSize, and NS_LOG_FUNCTION.
Referenced by GetSerializedSize(), operator==(), Print(), and Serialize().
uint8_t ns3::PbbMessage::GetHopCount | ( | ) | const |
Calling this while HasHopCount is False is undefined. Make sure you check it first. This will be checked by an assert in debug builds.
Definition at line 1105 of file packetbb.cc.
References HasHopCount(), m_hopCount, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
uint8_t ns3::PbbMessage::GetHopLimit | ( | ) | const |
Calling this while HasHopLimit is False is undefined. Make sure you check it first. This will be checked by an assert in debug builds.
Definition at line 1082 of file packetbb.cc.
References HasHopLimit(), m_hopLimit, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
Address ns3::PbbMessage::GetOriginatorAddress | ( | ) | const |
Calling this while HasOriginatorAddress is False is undefined. Make sure you check it first. This will be checked by an assert in debug builds.
Definition at line 1059 of file packetbb.cc.
References HasOriginatorAddress(), m_originatorAddress, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by operator==(), ns3::PbbMessageIpv4::PrintOriginatorAddress(), ns3::PbbMessageIpv6::PrintOriginatorAddress(), ns3::PbbMessageIpv4::SerializeOriginatorAddress(), and ns3::PbbMessageIpv6::SerializeOriginatorAddress().
uint16_t ns3::PbbMessage::GetSequenceNumber | ( | ) | const |
Calling this while HasSequenceNumber is False is undefined. Make sure you check it first. This will be checked by an assert in debug builds.
Definition at line 1128 of file packetbb.cc.
References HasSequenceNumber(), m_sequenceNumber, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
uint32_t ns3::PbbMessage::GetSerializedSize | ( | ) | const |
Definition at line 1390 of file packetbb.cc.
References AddressBlockBegin(), AddressBlockEnd(), GetAddressLength(), ns3::PbbTlvBlock::GetSerializedSize(), HasHopCount(), HasHopLimit(), HasOriginatorAddress(), HasSequenceNumber(), m_tlvList, and NS_LOG_FUNCTION.
uint8_t ns3::PbbMessage::GetType | ( | ) | const |
Definition at line 1037 of file packetbb.cc.
References m_type, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasHopCount | ( | ) | const |
Tests whether or not this message has a hop count.
Definition at line 1113 of file packetbb.cc.
References m_hasHopCount, and NS_LOG_FUNCTION.
Referenced by GetHopCount(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasHopLimit | ( | ) | const |
Tests whether or not this message has a hop limit.
If this is set, messages should not hop further than this limit.
Definition at line 1090 of file packetbb.cc.
References m_hasHopLimit, and NS_LOG_FUNCTION.
Referenced by GetHopLimit(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasOriginatorAddress | ( | ) | const |
Tests whether or not this message has an originator address.
Definition at line 1067 of file packetbb.cc.
References m_hasOriginatorAddress, and NS_LOG_FUNCTION.
Referenced by GetOriginatorAddress(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasSequenceNumber | ( | ) | const |
Tests whether or not this message has a sequence number.
Definition at line 1136 of file packetbb.cc.
References m_hasSequenceNumber, and NS_LOG_FUNCTION.
Referenced by GetSequenceNumber(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::operator!= | ( | const PbbMessage & | other | ) | const |
Inequality operator for PbbMessage.
other | PbbMessage to compare to this one |
Definition at line 1698 of file packetbb.cc.
bool ns3::PbbMessage::operator== | ( | const PbbMessage & | other | ) | const |
Equality operator for PbbMessage.
other | PbbMessage to compare to this one |
Definition at line 1609 of file packetbb.cc.
References AddressBlockBegin(), AddressBlockEnd(), AddressBlockSize(), GetAddressLength(), GetHopCount(), GetHopLimit(), GetOriginatorAddress(), GetSequenceNumber(), GetType(), HasHopCount(), HasHopLimit(), HasOriginatorAddress(), HasSequenceNumber(), and m_tlvList.
void ns3::PbbMessage::Print | ( | std::ostream & | os | ) | const |
Pretty-prints the contents of this message.
os | a stream object to print to. |
Definition at line 1556 of file packetbb.cc.
References NS_LOG_FUNCTION, and Print().
Referenced by Print().
void ns3::PbbMessage::Print | ( | std::ostream & | os, |
int | level ) const |
Pretty-prints the contents of this message, 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 1563 of file packetbb.cc.
References AddressBlockBegin(), AddressBlockEnd(), GetAddressLength(), GetHopCount(), GetHopLimit(), GetSequenceNumber(), GetType(), HasHopCount(), HasHopLimit(), HasOriginatorAddress(), HasSequenceNumber(), m_tlvList, NS_LOG_FUNCTION, ns3::PbbTlvBlock::Print(), and PrintOriginatorAddress().
|
protectedpure virtual |
Print the originator address.
os | the output stream |
Implemented in ns3::PbbMessageIpv4, and ns3::PbbMessageIpv6.
Referenced by Print().
void ns3::PbbMessage::Serialize | ( | Buffer::Iterator & | start | ) | const |
Serializes this message 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 1427 of file packetbb.cc.
References AddressBlockBegin(), AddressBlockEnd(), GetAddressLength(), ns3::Buffer::Iterator::GetDistanceFrom(), GetHopCount(), GetHopLimit(), GetSequenceNumber(), GetType(), HasHopCount(), HasHopLimit(), HasOriginatorAddress(), HasSequenceNumber(), m_tlvList, MHAS_HOP_COUNT, MHAS_HOP_LIMIT, MHAS_ORIG, MHAS_SEQ_NUM, ns3::Buffer::Iterator::Next(), NS_LOG_FUNCTION, ns3::PbbTlvBlock::Serialize(), SerializeOriginatorAddress(), ns3::Buffer::Iterator::WriteHtonU16(), and ns3::Buffer::Iterator::WriteU8().
|
protectedpure virtual |
Serialize the originator address.
start | the buffer iterator start |
Implemented in ns3::PbbMessageIpv4, and ns3::PbbMessageIpv6.
Referenced by Serialize().
void ns3::PbbMessage::SetHopCount | ( | uint8_t | hopcount | ) |
Sets the current number of hops this message has traveled.
hopcount | the current number of hops |
Definition at line 1097 of file packetbb.cc.
References m_hasHopCount, m_hopCount, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbMessage::SetHopLimit | ( | uint8_t | hoplimit | ) |
Sets the maximum number of hops this message should travel.
hoplimit | the limit to set |
Definition at line 1074 of file packetbb.cc.
References m_hasHopLimit, m_hopLimit, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbMessage::SetOriginatorAddress | ( | Address | address | ) |
Sets the address for the node that created this packet.
address | the originator address. |
Definition at line 1051 of file packetbb.cc.
References m_hasOriginatorAddress, m_originatorAddress, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbMessage::SetSequenceNumber | ( | uint16_t | seqnum | ) |
Sets the sequence number of this message.
seqnum | the sequence number to set. |
Definition at line 1120 of file packetbb.cc.
References m_hasSequenceNumber, m_sequenceNumber, and NS_LOG_FUNCTION.
Referenced by Deserialize().
void ns3::PbbMessage::SetType | ( | uint8_t | type | ) |
Sets the type for this message.
type | the type to set. |
Definition at line 1030 of file packetbb.cc.
References m_type, and NS_LOG_FUNCTION.
Referenced by Deserialize().
Definition at line 1201 of file packetbb.cc.
References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1208 of file packetbb.cc.
References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvBegin | ( | ) |
Definition at line 1145 of file packetbb.cc.
References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::ConstTlvIterator ns3::PbbMessage::TlvBegin | ( | ) | const |
Definition at line 1152 of file packetbb.cc.
References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::TlvClear | ( | ) |
Removes all message TLVs from this block.
Definition at line 1257 of file packetbb.cc.
References ns3::PbbTlvBlock::Clear(), m_tlvList, and NS_LOG_FUNCTION.
bool ns3::PbbMessage::TlvEmpty | ( | ) | const |
Definition at line 1180 of file packetbb.cc.
References ns3::PbbTlvBlock::Empty(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvEnd | ( | ) |
Definition at line 1159 of file packetbb.cc.
References ns3::PbbTlvBlock::End(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::ConstTlvIterator ns3::PbbMessage::TlvEnd | ( | ) | const |
Definition at line 1166 of file packetbb.cc.
References ns3::PbbTlvBlock::End(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvErase | ( | PbbMessage::TlvIterator | first, |
PbbMessage::TlvIterator | last ) |
Removes all message TLVs from [first, last) (includes first, not includes last).
first | an Iterator pointing to the first message TLV to erase (inclusive). |
last | an Iterator pointing to the element past the last message TLV to erase. |
Definition at line 1250 of file packetbb.cc.
References ns3::PbbTlvBlock::Erase(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvErase | ( | PbbMessage::TlvIterator | position | ) |
Removes the message TLV at the specified position.
position | an Iterator pointing to the message TLV to erase. |
Definition at line 1243 of file packetbb.cc.
References ns3::PbbTlvBlock::Erase(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1187 of file packetbb.cc.
References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1194 of file packetbb.cc.
References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::TlvPopBack | ( | ) |
Removes a message TLV from the back of this message.
Definition at line 1236 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PopBack().
void ns3::PbbMessage::TlvPopFront | ( | ) |
Removes a message TLV from the front of this message.
Definition at line 1222 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PopFront().
Appends a message TLV to the back of this message.
tlv | a smart pointer to the message TLV to append. |
Definition at line 1229 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PushBack().
Prepends a message TLV to the front of this message.
tlv | a smart pointer to the message TLV to prepend. |
Definition at line 1215 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PushFront().
int ns3::PbbMessage::TlvSize | ( | ) | const |
Definition at line 1173 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::Size().
|
private |
PbbAddressBlock container.
Definition at line 1103 of file packetbb.h.
Referenced by AddressBlockBack(), AddressBlockBack(), AddressBlockBegin(), AddressBlockBegin(), AddressBlockClear(), AddressBlockEmpty(), AddressBlockEnd(), AddressBlockEnd(), AddressBlockErase(), AddressBlockErase(), AddressBlockFront(), AddressBlockFront(), AddressBlockPopBack(), AddressBlockPopFront(), AddressBlockPushBack(), AddressBlockPushFront(), and AddressBlockSize().
|
private |
the address size
Definition at line 1106 of file packetbb.h.
Referenced by PbbMessage(), and GetAddressLength().
|
private |
Hop count present.
Definition at line 1114 of file packetbb.h.
Referenced by PbbMessage(), HasHopCount(), and SetHopCount().
|
private |
Hop limit present.
Definition at line 1111 of file packetbb.h.
Referenced by PbbMessage(), HasHopLimit(), and SetHopLimit().
|
private |
Originator address present.
Definition at line 1108 of file packetbb.h.
Referenced by PbbMessage(), HasOriginatorAddress(), and SetOriginatorAddress().
|
private |
Sequence number present.
Definition at line 1117 of file packetbb.h.
Referenced by PbbMessage(), HasSequenceNumber(), and SetSequenceNumber().
|
private |
Hop count.
Definition at line 1115 of file packetbb.h.
Referenced by GetHopCount(), and SetHopCount().
|
private |
Hop limit.
Definition at line 1112 of file packetbb.h.
Referenced by GetHopLimit(), and SetHopLimit().
|
private |
originator address
Definition at line 1109 of file packetbb.h.
Referenced by GetOriginatorAddress(), and SetOriginatorAddress().
|
private |
Sequence number.
Definition at line 1118 of file packetbb.h.
Referenced by GetSequenceNumber(), and SetSequenceNumber().
|
private |
Definition at line 1102 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 |
the type for this message
Definition at line 1105 of file packetbb.h.