A Discrete-Event Network Simulator
API
ns3::PbbPacket Class Reference

Main PacketBB Packet object. More...

#include "packetbb.h"

+ Inheritance diagram for ns3::PbbPacket:
+ Collaboration diagram for ns3::PbbPacket:

Public Types

typedef std::list< Ptr< PbbMessage > >::const_iterator ConstMessageIterator
 PbbMessage Const Iterator for PbbPacket. More...
 
typedef std::list< Ptr< PbbTlv > >::const_iterator ConstTlvIterator
 PbbTlv const iterator for PbbPacket. More...
 
typedef std::list< Ptr< PbbMessage > >::iterator MessageIterator
 PbbMessage Iterator for PbbPacket. More...
 
typedef std::list< Ptr< PbbTlv > >::iterator TlvIterator
 PbbTlv iterator for PbbPacket. More...
 

Public Member Functions

 PbbPacket (void)
 
 ~PbbPacket (void)
 
virtual uint32_t Deserialize (Buffer::Iterator start)
 Deserializes a packet from the specified buffer. More...
 
MessageIterator Erase (MessageIterator first, MessageIterator last)
 Removes all messages from [first, last) (includes first, not includes last). More...
 
MessageIterator Erase (MessageIterator position)
 Removes the message at the specified position. More...
 
TlvIterator Erase (TlvIterator first, TlvIterator last)
 Removes all packet TLVs from [first, last) (includes first, not includes last). More...
 
TlvIterator Erase (TlvIterator position)
 Removes the packet TLV at the specified position. More...
 
virtual TypeId GetInstanceTypeId (void) const
 Get the most derived TypeId for this Object. More...
 
uint16_t GetSequenceNumber (void) const
 
virtual uint32_t GetSerializedSize (void) const
 
uint8_t GetVersion (void) const
 
bool HasSequenceNumber (void) const
 Tests whether or not this packet has a sequence number. More...
 
Ptr< PbbMessageMessageBack (void)
 
const Ptr< PbbMessageMessageBack (void) const
 
MessageIterator MessageBegin (void)
 
ConstMessageIterator MessageBegin (void) const
 
void MessageClear (void)
 Removes all messages from this packet. More...
 
bool MessageEmpty (void) const
 
MessageIterator MessageEnd (void)
 
ConstMessageIterator MessageEnd (void) const
 
Ptr< PbbMessageMessageFront (void)
 
const Ptr< PbbMessageMessageFront (void) const
 
void MessagePopBack (void)
 Removes a message from the back of this packet. More...
 
void MessagePopFront (void)
 Removes a message from the front of this packet. More...
 
void MessagePushBack (Ptr< PbbMessage > message)
 Appends a message to the back of this packet. More...
 
void MessagePushFront (Ptr< PbbMessage > message)
 Prepends a message to the front of this packet. More...
 
int MessageSize (void) const
 
bool operator!= (const PbbPacket &other) const
 Inequality operator for PbbPacket. More...
 
bool operator== (const PbbPacket &other) const
 Equality operator for PbbPacket. More...
 
virtual void Print (std::ostream &os) const
 Pretty-prints the contents of this block. More...
 
virtual void Serialize (Buffer::Iterator start) const
 Serializes this packet into the specified buffer. More...
 
void SetSequenceNumber (uint16_t number)
 Sets the sequence number of this packet. More...
 
Ptr< PbbTlvTlvBack (void)
 
const Ptr< PbbTlvTlvBack (void) const
 
TlvIterator TlvBegin (void)
 
ConstTlvIterator TlvBegin (void) const
 
void TlvClear (void)
 Removes all packet TLVs from this packet. More...
 
bool TlvEmpty (void) const
 
TlvIterator TlvEnd (void)
 
ConstTlvIterator TlvEnd (void) const
 
Ptr< PbbTlvTlvFront (void)
 
const Ptr< PbbTlvTlvFront (void) const
 
void TlvPopBack (void)
 Removes a packet TLV from the back of this block. More...
 
void TlvPopFront (void)
 Removes a packet TLV from the front of this packet. More...
 
void TlvPushBack (Ptr< PbbTlv > tlv)
 Appends a packet TLV to the back of this packet. More...
 
void TlvPushFront (Ptr< PbbTlv > tlv)
 Prepends a packet TLV to the front of this packet. More...
 
int TlvSize (void) const
 
- Public Member Functions inherited from ns3::SimpleRefCount< PbbPacket, Header >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 
- Public Member Functions inherited from ns3::Header
virtual ~Header ()
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator. More...
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator. More...
 
virtual uint32_t GetSerializedSize (void) const =0
 
virtual void Print (std::ostream &os) const =0
 
virtual void Serialize (Buffer::Iterator start) const =0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator. More...
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator. More...
 
virtual void Print (std::ostream &os) const =0
 Print the object contents. More...
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor. More...
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful. More...
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising erros. More...
 
virtual TypeId GetInstanceTypeId (void) const =0
 Get the most derived TypeId for this Object. More...
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful. More...
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors. More...
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context. More...
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context. More...
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context. More...
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::Header
static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::Chunk
static TypeId GetTypeId (void)
 Get the type ID. More...
 
- Static Public Member Functions inherited from ns3::ObjectBase
static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

bool m_hasseqnum
 Sequence number present. More...
 
std::list< Ptr< PbbMessage > > m_messageList
 PbbTlvBlock container. More...
 
uint16_t m_seqnum
 Sequence number. More...
 
PbbTlvBlock m_tlvList
 PbbTlv container. More...
 
uint8_t m_version
 version More...
 

Additional Inherited Members

- Protected Member Functions inherited from ns3::ObjectBase
void ConstructSelf (const AttributeConstructionList &attributes)
 Complete construction of ObjectBase; invoked by derived classes. More...
 
virtual void NotifyConstructionCompleted (void)
 Notifier called once the ObjectBase is fully constructed. More...
 

Detailed Description

Main PacketBB Packet object.

Introspection did not find any typical Config paths.

A PacketBB packet is made up of zero or more packet TLVs (PbbTlv), and zero or more messages (PbbMessage).

See: RFC 5444 for details.


No Attributes are defined for this type.
No TraceSources are defined for this type.
Size of this type is 56 bytes (on a 64-bit architecture).

Definition at line 389 of file packetbb.h.

Member Typedef Documentation

◆ ConstMessageIterator

PbbMessage Const Iterator for PbbPacket.

Definition at line 399 of file packetbb.h.

◆ ConstTlvIterator

PbbTlv const iterator for PbbPacket.

Definition at line 395 of file packetbb.h.

◆ MessageIterator

PbbMessage Iterator for PbbPacket.

Definition at line 397 of file packetbb.h.

◆ TlvIterator

PbbTlv iterator for PbbPacket.

Definition at line 393 of file packetbb.h.

Constructor & Destructor Documentation

◆ PbbPacket()

ns3::PbbPacket::PbbPacket ( void  )

Definition at line 546 of file packetbb.cc.

References m_hasseqnum, m_version, NS_LOG_FUNCTION, and ns3::VERSION.

◆ ~PbbPacket()

ns3::PbbPacket::~PbbPacket ( void  )

Definition at line 553 of file packetbb.cc.

References MessageClear(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

Member Function Documentation

◆ Deserialize()

uint32_t ns3::PbbPacket::Deserialize ( Buffer::Iterator  start)
virtual

Deserializes a packet from the specified buffer.

Parameters
startstart offset
Returns
the number of bytes deserialized

If this returns a number smaller than the total number of bytes in the buffer, there was an error.

Implements ns3::Header.

Definition at line 917 of file packetbb.cc.

References ns3::PbbTlvBlock::Deserialize(), ns3::PbbMessage::DeserializeMessage(), m_tlvList, m_version, MessagePushBack(), NS_LOG_FUNCTION, PHAS_SEQ_NUM, PHAS_TLV, SetSequenceNumber(), and visualizer.core::start().

Referenced by PbbTestCase::TestDeserialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ Erase() [1/4]

MessageIterator ns3::PbbPacket::Erase ( MessageIterator  first,
MessageIterator  last 
)

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

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

◆ Erase() [2/4]

MessageIterator ns3::PbbPacket::Erase ( MessageIterator  position)

Removes the message at the specified position.

Parameters
positionan Iterator pointing to the message to erase.
Returns
an iterator pointing to the next message in the packet.

◆ Erase() [3/4]

PbbPacket::MessageIterator ns3::PbbPacket::Erase ( PbbPacket::TlvIterator  first,
PbbPacket::TlvIterator  last 
)

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

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

Definition at line 697 of file packetbb.cc.

References ns3::PbbTlvBlock::Erase(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ Erase() [4/4]

PbbPacket::MessageIterator ns3::PbbPacket::Erase ( PbbPacket::TlvIterator  position)

Removes the packet TLV at the specified position.

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

Definition at line 690 of file packetbb.cc.

References ns3::PbbTlvBlock::Erase(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::PbbPacket::GetInstanceTypeId ( void  ) const
virtual

Get the most derived TypeId for this Object.

This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.

Returns
The TypeId associated to the most-derived type of this instance.

Implements ns3::ObjectBase.

Definition at line 849 of file packetbb.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetSequenceNumber()

uint16_t ns3::PbbPacket::GetSequenceNumber ( void  ) const
Returns
the sequence number of this packet.

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 575 of file packetbb.cc.

References HasSequenceNumber(), m_seqnum, NS_ASSERT, and NS_LOG_FUNCTION.

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

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetSerializedSize()

uint32_t ns3::PbbPacket::GetSerializedSize ( void  ) const
virtual
Returns
The size (in bytes) needed to serialize this packet.

Implements ns3::Header.

Definition at line 855 of file packetbb.cc.

References ns3::PbbTlvBlock::GetSerializedSize(), HasSequenceNumber(), m_tlvList, MessageBegin(), MessageEnd(), NS_LOG_FUNCTION, and TlvEmpty().

Referenced by PbbTestCase::TestSerialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::PbbPacket::GetTypeId ( void  )
static

Get the type ID.

Returns
the object TypeId

Definition at line 838 of file packetbb.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetVersion()

uint8_t ns3::PbbPacket::GetVersion ( void  ) const
Returns
the version of PacketBB that constructed this packet.

This will always return 0 for packets constructed using this API.

Definition at line 560 of file packetbb.cc.

References m_version, and NS_LOG_FUNCTION.

Referenced by operator==().

+ Here is the caller graph for this function:

◆ HasSequenceNumber()

bool ns3::PbbPacket::HasSequenceNumber ( void  ) const

Tests whether or not this packet has a sequence number.

Returns
true if this packet has a sequence number, false otherwise.

This should be called before calling GetSequenceNumber to make sure there actually is one.

Definition at line 583 of file packetbb.cc.

References m_hasseqnum, and NS_LOG_FUNCTION.

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

+ Here is the caller graph for this function:

◆ MessageBack() [1/2]

Ptr< PbbMessage > ns3::PbbPacket::MessageBack ( void  )
Returns
a smart pointer to the last message in this packet.

Definition at line 769 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageBack() [2/2]

const Ptr< PbbMessage > ns3::PbbPacket::MessageBack ( void  ) const
Returns
a const smart pointer to the last message in this packet.

Definition at line 776 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageBegin() [1/2]

PbbPacket::MessageIterator ns3::PbbPacket::MessageBegin ( void  )
Returns
an iterator to the first message in this packet.

Definition at line 713 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

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

+ Here is the caller graph for this function:

◆ MessageBegin() [2/2]

PbbPacket::ConstMessageIterator ns3::PbbPacket::MessageBegin ( void  ) const
Returns
a const iterator to the first message in this packet.

Definition at line 720 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageClear()

void ns3::PbbPacket::MessageClear ( void  )

Removes all messages from this packet.

Definition at line 826 of file packetbb.cc.

References m_messageList, MessageBegin(), MessageEnd(), and NS_LOG_FUNCTION.

Referenced by ~PbbPacket().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MessageEmpty()

bool ns3::PbbPacket::MessageEmpty ( void  ) const
Returns
true if there are no messages in this packet, false otherwise.

Definition at line 748 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageEnd() [1/2]

PbbPacket::MessageIterator ns3::PbbPacket::MessageEnd ( void  )
Returns
an iterator to the past-the-end element in this message block.

Definition at line 727 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

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

+ Here is the caller graph for this function:

◆ MessageEnd() [2/2]

PbbPacket::ConstMessageIterator ns3::PbbPacket::MessageEnd ( void  ) const
Returns
a const iterator to the past-the-end element in this message block.

Definition at line 734 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageFront() [1/2]

Ptr< PbbMessage > ns3::PbbPacket::MessageFront ( void  )
Returns
a smart pointer to the first message in this packet.

Definition at line 755 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageFront() [2/2]

const Ptr< PbbMessage > ns3::PbbPacket::MessageFront ( void  ) const
Returns
a const smart pointer to the first message in this packet.

Definition at line 762 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessagePopBack()

void ns3::PbbPacket::MessagePopBack ( void  )

Removes a message from the back of this packet.

Definition at line 804 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessagePopFront()

void ns3::PbbPacket::MessagePopFront ( void  )

Removes a message from the front of this packet.

Definition at line 790 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessagePushBack()

void ns3::PbbPacket::MessagePushBack ( Ptr< PbbMessage message)

Appends a message to the back of this packet.

Parameters
messagea smart pointer to the message to append.

Definition at line 797 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

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

+ Here is the caller graph for this function:

◆ MessagePushFront()

void ns3::PbbPacket::MessagePushFront ( Ptr< PbbMessage message)

Prepends a message to the front of this packet.

Parameters
messagea smart pointer to the message to prepend.

Definition at line 783 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

◆ MessageSize()

int ns3::PbbPacket::MessageSize ( void  ) const
Returns
the number of messages in this packet.

Definition at line 741 of file packetbb.cc.

References m_messageList, and NS_LOG_FUNCTION.

Referenced by operator==().

+ Here is the caller graph for this function:

◆ operator!=()

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

Inequality operator for PbbPacket.

Parameters
otherPbbPacket to compare to this one
Returns
true if PbbPacket are not equal

Definition at line 1018 of file packetbb.cc.

◆ operator==()

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

Equality operator for PbbPacket.

Parameters
otherPbbPacket to compare to this one
Returns
true if PbbPacket are equal

Definition at line 976 of file packetbb.cc.

References GetSequenceNumber(), GetVersion(), HasSequenceNumber(), m_tlvList, MessageBegin(), MessageEnd(), and MessageSize().

+ Here is the call graph for this function:

◆ Print()

void ns3::PbbPacket::Print ( std::ostream &  os) const
virtual

Pretty-prints the contents of this block.

Parameters
osa stream object to print to.

Implements ns3::Header.

Definition at line 951 of file packetbb.cc.

References GetSequenceNumber(), HasSequenceNumber(), m_tlvList, MessageBegin(), MessageEnd(), NS_LOG_FUNCTION, and ns3::PbbTlvBlock::Print().

+ Here is the call graph for this function:

◆ Serialize()

void ns3::PbbPacket::Serialize ( Buffer::Iterator  start) const
virtual

Serializes this packet into the specified buffer.

Parameters
starta reference to the point in a buffer to begin serializing.

Implements ns3::Header.

Definition at line 882 of file packetbb.cc.

References GetSequenceNumber(), HasSequenceNumber(), m_tlvList, MessageBegin(), MessageEnd(), NS_LOG_FUNCTION, PHAS_SEQ_NUM, PHAS_TLV, ns3::PbbTlvBlock::Serialize(), visualizer.core::start(), TlvEmpty(), ns3::VERSION, and ns3::Buffer::Iterator::WriteU8().

Referenced by PbbTestCase::TestSerialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SetSequenceNumber()

void ns3::PbbPacket::SetSequenceNumber ( uint16_t  number)

Sets the sequence number of this packet.

Parameters
numberthe sequence number.

Definition at line 567 of file packetbb.cc.

References m_hasseqnum, m_seqnum, and NS_LOG_FUNCTION.

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

+ Here is the caller graph for this function:

◆ TlvBack() [1/2]

Ptr< PbbTlv > ns3::PbbPacket::TlvBack ( void  )
Returns
a smart pointer to the last packet TLV in this packet.

Definition at line 648 of file packetbb.cc.

References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvBack() [2/2]

const Ptr< PbbTlv > ns3::PbbPacket::TlvBack ( void  ) const
Returns
a const smart pointer to the last packet TLV in this packet.

Definition at line 655 of file packetbb.cc.

References ns3::PbbTlvBlock::Back(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvBegin() [1/2]

PbbPacket::TlvIterator ns3::PbbPacket::TlvBegin ( void  )
Returns
an iterator to the first Packet TLV in this packet.

Definition at line 592 of file packetbb.cc.

References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvBegin() [2/2]

PbbPacket::ConstTlvIterator ns3::PbbPacket::TlvBegin ( void  ) const
Returns
a const iterator to the first Packet TLV in this packet.

Definition at line 599 of file packetbb.cc.

References ns3::PbbTlvBlock::Begin(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvClear()

void ns3::PbbPacket::TlvClear ( void  )

Removes all packet TLVs from this packet.

Definition at line 704 of file packetbb.cc.

References ns3::PbbTlvBlock::Clear(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvEmpty()

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

Definition at line 627 of file packetbb.cc.

References ns3::PbbTlvBlock::Empty(), m_tlvList, and NS_LOG_FUNCTION.

Referenced by GetSerializedSize(), and Serialize().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TlvEnd() [1/2]

PbbPacket::TlvIterator ns3::PbbPacket::TlvEnd ( void  )
Returns
an iterator to the past-the-end element in this packet TLV block.

Definition at line 606 of file packetbb.cc.

References ns3::PbbTlvBlock::End(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvEnd() [2/2]

PbbPacket::ConstTlvIterator ns3::PbbPacket::TlvEnd ( void  ) const
Returns
a const iterator to the past-the-end element in this packet TLV block.

Definition at line 613 of file packetbb.cc.

References ns3::PbbTlvBlock::End(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvFront() [1/2]

Ptr< PbbTlv > ns3::PbbPacket::TlvFront ( void  )
Returns
a smart pointer to the first packet TLV in this packet.

Definition at line 634 of file packetbb.cc.

References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvFront() [2/2]

const Ptr< PbbTlv > ns3::PbbPacket::TlvFront ( void  ) const
Returns
a const smart pointer to the first packet TLV in this packet.

Definition at line 641 of file packetbb.cc.

References ns3::PbbTlvBlock::Front(), m_tlvList, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ TlvPopBack()

void ns3::PbbPacket::TlvPopBack ( void  )

Removes a packet TLV from the back of this block.

Definition at line 683 of file packetbb.cc.

References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PopBack().

+ Here is the call graph for this function:

◆ TlvPopFront()

void ns3::PbbPacket::TlvPopFront ( void  )

Removes a packet TLV from the front of this packet.

Definition at line 669 of file packetbb.cc.

References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PopFront().

+ Here is the call graph for this function:

◆ TlvPushBack()

void ns3::PbbPacket::TlvPushBack ( Ptr< PbbTlv tlv)

Appends a packet TLV to the back of this packet.

Parameters
tlva smart pointer to the packet TLV to append.

Definition at line 676 of file packetbb.cc.

References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PushBack().

Referenced by PbbTestSuite::PbbTestSuite().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TlvPushFront()

void ns3::PbbPacket::TlvPushFront ( Ptr< PbbTlv tlv)

Prepends a packet TLV to the front of this packet.

Parameters
tlva smart pointer to the packet TLV to prepend.

Definition at line 662 of file packetbb.cc.

References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::PushFront().

+ Here is the call graph for this function:

◆ TlvSize()

int ns3::PbbPacket::TlvSize ( void  ) const
Returns
the number of packet TLVs in this packet.

Definition at line 620 of file packetbb.cc.

References m_tlvList, NS_LOG_FUNCTION, and ns3::PbbTlvBlock::Size().

+ Here is the call graph for this function:

Member Data Documentation

◆ m_hasseqnum

bool ns3::PbbPacket::m_hasseqnum
private

Sequence number present.

Definition at line 684 of file packetbb.h.

Referenced by PbbPacket(), HasSequenceNumber(), and SetSequenceNumber().

◆ m_messageList

◆ m_seqnum

uint16_t ns3::PbbPacket::m_seqnum
private

Sequence number.

Definition at line 685 of file packetbb.h.

Referenced by GetSequenceNumber(), and SetSequenceNumber().

◆ m_tlvList

◆ m_version

uint8_t ns3::PbbPacket::m_version
private

version

Definition at line 682 of file packetbb.h.

Referenced by PbbPacket(), Deserialize(), and GetVersion().


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