ns3::SatEncapPduStatusTag Class Reference

SatEncapPduStatusTag is used temporarily to tag packets with the fragmentation status in the encapsulation and fragmentation process. More...

#include "satellite-encap-pdu-status-tag.h"

+ Inheritance diagram for ns3::SatEncapPduStatusTag:
+ Collaboration diagram for ns3::SatEncapPduStatusTag:

Public Types

enum  PduStatus_t {
  FULL_PDU = 0 , START_PDU = 1 , CONTINUATION_PDU = 2 , END_PDU = 3 ,
  LAST_ELEMENT = 4
}
 Fragmentation enums. More...
 

Public Member Functions

 SatEncapPduStatusTag ()
 Default constructor. More...
 
virtual void Deserialize (TagBuffer i)
 Deserializes information from buffer to this instance of SatEncapPduStatusTag. More...
 
virtual TypeId GetInstanceTypeId (void) const
 Get the type ID of instance. More...
 
virtual uint32_t GetSerializedSize (void) const
 Get serialized size of SatEncapPduStatusTag. More...
 
uint8_t GetStatus (void) const
 Get PDU status. More...
 
virtual void Print (std::ostream &os) const
 Print time stamp of this instance of SatEncapPduStatusTag. More...
 
virtual void Serialize (TagBuffer i) const
 Serializes information to buffer from this instance of SatEncapPduStatusTag. More...
 
void SetStatus (uint8_t status)
 Set PDU status. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID. More...
 

Private Attributes

uint8_t m_pduStatus
 

Detailed Description

SatEncapPduStatusTag is used temporarily to tag packets with the fragmentation status in the encapsulation and fragmentation process.

The same generic tag is used in both RLE (SatReturnLinkEncapsulator) and GSE (SatGenericStreamEncapsulator). There are four possible status enumerators:

  • FULL_PDU: a complete higher layer PDU which has not been fragmented yet
  • START_PDU: a first piece of a fragmented higher layer PDU
  • CONTINUATION_PDU: a middle piece of a fragmented higher layer PDU (not first nor last)
  • END_PDU: a last piece of a fragmented higher layer PDU

Definition at line 42 of file satellite-encap-pdu-status-tag.h.

Member Enumeration Documentation

◆ PduStatus_t

Fragmentation enums.

Enumerator
FULL_PDU 
START_PDU 
CONTINUATION_PDU 
END_PDU 
LAST_ELEMENT 

Definition at line 101 of file satellite-encap-pdu-status-tag.h.

Constructor & Destructor Documentation

◆ SatEncapPduStatusTag()

ns3::SatEncapPduStatusTag::SatEncapPduStatusTag ( )

Default constructor.

Definition at line 32 of file satellite-encap-pdu-status-tag.cc.

Member Function Documentation

◆ Deserialize()

void ns3::SatEncapPduStatusTag::Deserialize ( TagBuffer  i)
virtual

Deserializes information from buffer to this instance of SatEncapPduStatusTag.

Parameters
iBuffer from which the information is deserialized

Definition at line 80 of file satellite-encap-pdu-status-tag.cc.

References m_pduStatus.

◆ GetInstanceTypeId()

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

Get the type ID of instance.

Returns
the object TypeId

Definition at line 60 of file satellite-encap-pdu-status-tag.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetSerializedSize()

uint32_t ns3::SatEncapPduStatusTag::GetSerializedSize ( void  ) const
virtual

Get serialized size of SatEncapPduStatusTag.

Returns
Serialized size in bytes

Definition at line 66 of file satellite-encap-pdu-status-tag.cc.

◆ GetStatus()

uint8_t ns3::SatEncapPduStatusTag::GetStatus ( void  ) const

Get PDU status.

Returns
PDU status

Definition at line 45 of file satellite-encap-pdu-status-tag.cc.

References m_pduStatus.

Referenced by ns3::SatGenericStreamEncapsulator::GetNewGsePdu(), and ns3::SatReturnLinkEncapsulator::GetNewRlePdu().

+ Here is the caller graph for this function:

◆ GetTypeId()

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

Get the type ID.

Returns
the object TypeId

Definition at line 52 of file satellite-encap-pdu-status-tag.cc.

Referenced by GetInstanceTypeId().

+ Here is the caller graph for this function:

◆ Print()

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

Print time stamp of this instance of SatEncapPduStatusTag.

Parameters
&osOutput stream to which tag timestamp is printed.

Definition at line 87 of file satellite-encap-pdu-status-tag.cc.

References m_pduStatus.

◆ Serialize()

void ns3::SatEncapPduStatusTag::Serialize ( TagBuffer  i) const
virtual

Serializes information to buffer from this instance of SatEncapPduStatusTag.

Parameters
iBuffer in which the information is serialized

Definition at line 73 of file satellite-encap-pdu-status-tag.cc.

References m_pduStatus.

◆ SetStatus()

void ns3::SatEncapPduStatusTag::SetStatus ( uint8_t  status)

Member Data Documentation

◆ m_pduStatus

uint8_t ns3::SatEncapPduStatusTag::m_pduStatus
private

Definition at line 111 of file satellite-encap-pdu-status-tag.h.

Referenced by Deserialize(), GetStatus(), Print(), Serialize(), and SetStatus().


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