A message within a PbbPacket packet. More...
#include "packetbb.h"
Public Types | |
typedef std::list< Ptr< PbbAddressBlock > >::iterator | AddressBlockIterator |
PbbAddressBlock iterator. More... | |
typedef std::list< Ptr< PbbAddressBlock > >::const_iterator | ConstAddressBlockIterator |
PbbAddressBlock const iterator. More... | |
typedef std::list< Ptr< PbbTlv > >::const_iterator | ConstTlvIterator |
PbbTlv const iterator. More... | |
typedef std::list< Ptr< PbbTlv > >::iterator | TlvIterator |
PbbTlv iterator. More... | |
Public Member Functions | |
PbbMessage () | |
virtual | ~PbbMessage () |
Ptr< PbbAddressBlock > | AddressBlockBack (void) |
const Ptr< PbbAddressBlock > | AddressBlockBack (void) const |
AddressBlockIterator | AddressBlockBegin () |
ConstAddressBlockIterator | AddressBlockBegin () const |
void | AddressBlockClear (void) |
Removes all address blocks from this message. More... | |
bool | AddressBlockEmpty (void) const |
AddressBlockIterator | AddressBlockEnd () |
ConstAddressBlockIterator | AddressBlockEnd () const |
AddressBlockIterator | AddressBlockErase (AddressBlockIterator first, AddressBlockIterator last) |
Removes all address blocks from [first, last) (includes first, not includes last). More... | |
AddressBlockIterator | AddressBlockErase (AddressBlockIterator position) |
Removes the address block at the specified position. More... | |
Ptr< PbbAddressBlock > | AddressBlockFront (void) |
const Ptr< PbbAddressBlock > | AddressBlockFront (void) const |
void | AddressBlockPopBack (void) |
Removes an address block from the back of this message. More... | |
void | AddressBlockPopFront (void) |
Removes an address block from the front of this message. More... | |
void | AddressBlockPushBack (Ptr< PbbAddressBlock > block) |
Appends an address block to the front of this message. More... | |
void | AddressBlockPushFront (Ptr< PbbAddressBlock > block) |
Prepends an address block to the front of this message. More... | |
int | AddressBlockSize (void) const |
void | Deserialize (Buffer::Iterator &start) |
Deserializes a message from the specified buffer. More... | |
uint8_t | GetHopCount (void) const |
uint8_t | GetHopLimit (void) const |
Address | GetOriginatorAddress (void) const |
uint16_t | GetSequenceNumber (void) const |
uint32_t | GetSerializedSize (void) const |
uint8_t | GetType (void) const |
bool | HasHopCount (void) const |
Tests whether or not this message has a hop count. More... | |
bool | HasHopLimit (void) const |
Tests whether or not this message has a hop limit. More... | |
bool | HasOriginatorAddress (void) const |
Tests whether or not this message has an originator address. More... | |
bool | HasSequenceNumber (void) const |
Tests whether or not this message has a sequence number. More... | |
bool | operator!= (const PbbMessage &other) const |
Inequality operator for PbbMessage. More... | |
bool | operator== (const PbbMessage &other) const |
Equality operator for PbbMessage. More... | |
void | Print (std::ostream &os) const |
Pretty-prints the contents of this message. More... | |
void | Print (std::ostream &os, int level) const |
Pretty-prints the contents of this message, with specified indentation. More... | |
void | Serialize (Buffer::Iterator &start) const |
Serializes this message into the specified buffer. More... | |
void | SetHopCount (uint8_t hopcount) |
Sets the current number of hops this message has traveled. More... | |
void | SetHopLimit (uint8_t hoplimit) |
Sets the maximum number of hops this message should travel. More... | |
void | SetOriginatorAddress (Address address) |
Sets the address for the node that created this packet. More... | |
void | SetSequenceNumber (uint16_t seqnum) |
Sets the sequence number of this message. More... | |
void | SetType (uint8_t type) |
Sets the type for this message. More... | |
Ptr< PbbTlv > | TlvBack (void) |
const Ptr< PbbTlv > | TlvBack (void) const |
TlvIterator | TlvBegin () |
ConstTlvIterator | TlvBegin () const |
void | TlvClear (void) |
Removes all message TLVs from this block. More... | |
bool | TlvEmpty (void) const |
TlvIterator | TlvEnd () |
ConstTlvIterator | TlvEnd () const |
TlvIterator | TlvErase (TlvIterator first, TlvIterator last) |
Removes all message TLVs from [first, last) (includes first, not includes last). More... | |
TlvIterator | TlvErase (TlvIterator position) |
Removes the message TLV at the specified position. More... | |
Ptr< PbbTlv > | TlvFront (void) |
const Ptr< PbbTlv > | TlvFront (void) const |
void | TlvPopBack (void) |
Removes a message TLV from the back of this message. More... | |
void | TlvPopFront (void) |
Removes a message TLV from the front of this message. More... | |
void | TlvPushBack (Ptr< PbbTlv > tlv) |
Appends a message TLV to the back of this message. More... | |
void | TlvPushFront (Ptr< PbbTlv > tlv) |
Prepends a message TLV to the front of this message. More... | |
int | TlvSize (void) const |
Public Member Functions inherited from ns3::SimpleRefCount< PbbMessage > | |
SimpleRefCount () | |
Default constructor. More... | |
SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= ([[maybe_unused]] const SimpleRefCount &o) |
Assignment operator. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
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. More... | |
Protected Member Functions | |
virtual Ptr< PbbAddressBlock > | AddressBlockDeserialize (Buffer::Iterator &start) const =0 |
Deserialize an address block. More... | |
virtual Address | DeserializeOriginatorAddress (Buffer::Iterator &start) const =0 |
Deserialize the originator address. More... | |
virtual PbbAddressLength | GetAddressLength (void) const =0 |
Returns address length (IPV4 3 or IPV6 15) More... | |
virtual void | PrintOriginatorAddress (std::ostream &os) const =0 |
Print the originator address. More... | |
virtual void | SerializeOriginatorAddress (Buffer::Iterator &start) const =0 |
Serialize the originator address. More... | |
Private Attributes | |
std::list< Ptr< PbbAddressBlock > > | m_addressBlockList |
PbbAddressBlock container. More... | |
PbbAddressLength | m_addrSize |
the address size More... | |
bool | m_hasHopCount |
Hop count present. More... | |
bool | m_hasHopLimit |
Hop limit present. More... | |
bool | m_hasOriginatorAddress |
Originator address present. More... | |
bool | m_hasSequenceNumber |
Sequence number present. More... | |
uint8_t | m_hopCount |
Hop count. More... | |
uint8_t | m_hopLimit |
Hop limit. More... | |
Address | m_originatorAddress |
originator address More... | |
uint16_t | m_sequenceNumber |
Sequence number. More... | |
PbbTlvBlock | m_tlvList |
PbbTlvBlock. More... | |
uint8_t | m_type |
the type for this message More... | |
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 1025 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 1036 of file packetbb.cc.
References AddressBlockClear(), and NS_LOG_FUNCTION.
Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockBack | ( | void | ) |
Definition at line 1335 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockBack | ( | void | ) | const |
Definition at line 1342 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockBegin | ( | void | ) |
Definition at line 1279 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by AddressBlockClear(), GetSerializedSize(), operator==(), Print(), and Serialize().
PbbMessage::ConstAddressBlockIterator ns3::PbbMessage::AddressBlockBegin | ( | void | ) | const |
Definition at line 1286 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockClear | ( | void | ) |
Removes all address blocks from this message.
Definition at line 1392 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::PbbMessageIpv6, and ns3::PbbMessageIpv4.
Referenced by Deserialize().
bool ns3::PbbMessage::AddressBlockEmpty | ( | void | ) | const |
Definition at line 1314 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
PbbMessage::AddressBlockIterator ns3::PbbMessage::AddressBlockEnd | ( | void | ) |
Definition at line 1293 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Referenced by AddressBlockClear(), GetSerializedSize(), operator==(), Print(), and Serialize().
PbbMessage::ConstAddressBlockIterator ns3::PbbMessage::AddressBlockEnd | ( | void | ) | const |
Definition at line 1300 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 1384 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 1377 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockFront | ( | void | ) |
Definition at line 1321 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
const Ptr< PbbAddressBlock > ns3::PbbMessage::AddressBlockFront | ( | void | ) | const |
Definition at line 1328 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockPopBack | ( | void | ) |
Removes an address block from the back of this message.
Definition at line 1370 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::AddressBlockPopFront | ( | void | ) |
Removes an address block from the front of this message.
Definition at line 1356 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 1363 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 1349 of file packetbb.cc.
References m_addressBlockList, and NS_LOG_FUNCTION.
int ns3::PbbMessage::AddressBlockSize | ( | void | ) | const |
Definition at line 1307 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 1534 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(), SetType(), and visualizer.core::start().
|
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 1501 of file packetbb.cc.
References ns3::IPV4, ns3::IPV6, NS_LOG_FUNCTION, and visualizer.core::start().
Referenced by ns3::PbbPacket::Deserialize().
|
protectedpure virtual |
Deserialize the originator address.
start | the buffer iterator start |
Implemented in ns3::PbbMessageIpv6, and ns3::PbbMessageIpv4.
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::PbbMessageIpv6, and ns3::PbbMessageIpv4.
Definition at line 1057 of file packetbb.cc.
References m_addrSize, and NS_LOG_FUNCTION.
Referenced by GetSerializedSize(), operator==(), Print(), and Serialize().
uint8_t ns3::PbbMessage::GetHopCount | ( | void | ) | 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 1118 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 | ( | void | ) | 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 1095 of file packetbb.cc.
References HasHopLimit(), m_hopLimit, NS_ASSERT, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
Address ns3::PbbMessage::GetOriginatorAddress | ( | void | ) | 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 1072 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 | ( | void | ) | 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 1141 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 | ( | void | ) | const |
Definition at line 1405 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 | ( | void | ) | const |
Definition at line 1050 of file packetbb.cc.
References m_type, and NS_LOG_FUNCTION.
Referenced by operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasHopCount | ( | void | ) | const |
Tests whether or not this message has a hop count.
Definition at line 1126 of file packetbb.cc.
References m_hasHopCount, and NS_LOG_FUNCTION.
Referenced by GetHopCount(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasHopLimit | ( | void | ) | 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 1103 of file packetbb.cc.
References m_hasHopLimit, and NS_LOG_FUNCTION.
Referenced by GetHopLimit(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasOriginatorAddress | ( | void | ) | const |
Tests whether or not this message has an originator address.
Definition at line 1080 of file packetbb.cc.
References m_hasOriginatorAddress, and NS_LOG_FUNCTION.
Referenced by GetOriginatorAddress(), GetSerializedSize(), operator==(), Print(), and Serialize().
bool ns3::PbbMessage::HasSequenceNumber | ( | void | ) | const |
Tests whether or not this message has a sequence number.
Definition at line 1149 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 1719 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 1631 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 1576 of file packetbb.cc.
References NS_LOG_FUNCTION.
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 1583 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::PbbMessageIpv6, and ns3::PbbMessageIpv4.
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 1444 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, NS_LOG_FUNCTION, ns3::PbbTlvBlock::Serialize(), SerializeOriginatorAddress(), visualizer.core::start(), ns3::Buffer::Iterator::WriteHtonU16(), and ns3::Buffer::Iterator::WriteU8().
|
protectedpure virtual |
Serialize the originator address.
start | the buffer iterator start |
Implemented in ns3::PbbMessageIpv6, and ns3::PbbMessageIpv4.
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 1110 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 1087 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 1064 of file packetbb.cc.
References first::address, 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 1133 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 1043 of file packetbb.cc.
References m_type, and NS_LOG_FUNCTION.
Referenced by Deserialize().
Definition at line 1214 of file packetbb.cc.
References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1221 of file packetbb.cc.
References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvBegin | ( | void | ) |
Definition at line 1158 of file packetbb.cc.
References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::ConstTlvIterator ns3::PbbMessage::TlvBegin | ( | void | ) | const |
Definition at line 1165 of file packetbb.cc.
References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::TlvClear | ( | void | ) |
Removes all message TLVs from this block.
Definition at line 1270 of file packetbb.cc.
References ns3::PbbTlvBlock::Clear(), m_tlvList, and NS_LOG_FUNCTION.
bool ns3::PbbMessage::TlvEmpty | ( | void | ) | const |
Definition at line 1193 of file packetbb.cc.
References ns3::PbbTlvBlock::Empty(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::TlvIterator ns3::PbbMessage::TlvEnd | ( | void | ) |
Definition at line 1172 of file packetbb.cc.
References ns3::PbbTlvBlock::End(), m_tlvList, and NS_LOG_FUNCTION.
PbbMessage::ConstTlvIterator ns3::PbbMessage::TlvEnd | ( | void | ) | const |
Definition at line 1179 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 1263 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 1256 of file packetbb.cc.
References ns3::PbbTlvBlock::Erase(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1200 of file packetbb.cc.
References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.
Definition at line 1207 of file packetbb.cc.
References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.
void ns3::PbbMessage::TlvPopBack | ( | void | ) |
Removes a message TLV from the back of this message.
Definition at line 1249 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PopBack().
void ns3::PbbMessage::TlvPopFront | ( | void | ) |
Removes a message TLV from the front of this message.
Definition at line 1235 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 1242 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 1228 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PushFront().
int ns3::PbbMessage::TlvSize | ( | void | ) | const |
Definition at line 1186 of file packetbb.cc.
References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::Size().
|
private |
PbbAddressBlock container.
Definition at line 1104 of file packetbb.h.
Referenced by AddressBlockBack(), AddressBlockBegin(), AddressBlockClear(), AddressBlockEmpty(), AddressBlockEnd(), AddressBlockErase(), AddressBlockFront(), AddressBlockPopBack(), AddressBlockPopFront(), AddressBlockPushBack(), AddressBlockPushFront(), and AddressBlockSize().
|
private |
the address size
Definition at line 1107 of file packetbb.h.
Referenced by PbbMessage(), and GetAddressLength().
|
private |
Hop count present.
Definition at line 1115 of file packetbb.h.
Referenced by PbbMessage(), HasHopCount(), and SetHopCount().
|
private |
Hop limit present.
Definition at line 1112 of file packetbb.h.
Referenced by PbbMessage(), HasHopLimit(), and SetHopLimit().
|
private |
Originator address present.
Definition at line 1109 of file packetbb.h.
Referenced by PbbMessage(), HasOriginatorAddress(), and SetOriginatorAddress().
|
private |
Sequence number present.
Definition at line 1118 of file packetbb.h.
Referenced by PbbMessage(), HasSequenceNumber(), and SetSequenceNumber().
|
private |
Hop count.
Definition at line 1116 of file packetbb.h.
Referenced by GetHopCount(), and SetHopCount().
|
private |
Hop limit.
Definition at line 1113 of file packetbb.h.
Referenced by GetHopLimit(), and SetHopLimit().
|
private |
originator address
Definition at line 1110 of file packetbb.h.
Referenced by GetOriginatorAddress(), and SetOriginatorAddress().
|
private |
Sequence number.
Definition at line 1119 of file packetbb.h.
Referenced by GetSequenceNumber(), and SetSequenceNumber().
|
private |
Definition at line 1103 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 |
the type for this message
Definition at line 1106 of file packetbb.h.