A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ns3::EpcX2ResourceStatusUpdateHeader Class Reference

EpcX2ResourceStatusUpdateHeader. More...

#include "epc-x2-header.h"

+ Inheritance diagram for ns3::EpcX2ResourceStatusUpdateHeader:
+ Collaboration diagram for ns3::EpcX2ResourceStatusUpdateHeader:

Public Member Functions

 EpcX2ResourceStatusUpdateHeader ()
 
 ~EpcX2ResourceStatusUpdateHeader () override
 
uint32_t Deserialize (Buffer::Iterator start) override
 
std::vector< EpcX2Sap::CellMeasurementResultItemGetCellMeasurementResultList () const
 Get cell measurement results list function.
 
uint16_t GetEnb1MeasurementId () const
 Get ENB1 measurement ID function.
 
uint16_t GetEnb2MeasurementId () const
 Get ENB2 measurement ID function.
 
TypeId GetInstanceTypeId () const override
 Get the most derived TypeId for this Object.
 
uint32_t GetLengthOfIes () const
 Get length of IEs function.
 
uint32_t GetNumberOfIes () const
 Get number of IEs function.
 
uint32_t GetSerializedSize () const override
 
void Print (std::ostream &os) const override
 
void Serialize (Buffer::Iterator start) const override
 
void SetCellMeasurementResultList (std::vector< EpcX2Sap::CellMeasurementResultItem > cellMeasurementResultList)
 Set cell measurement results list function.
 
void SetEnb1MeasurementId (uint16_t enb1MeasurementId)
 Set ENB1 measurement ID function.
 
void SetEnb2MeasurementId (uint16_t enb2MeasurementId)
 Set ENB2 measurement ID function.
 
- Public Member Functions inherited from ns3::Header
 ~Header () override
 
uint32_t Deserialize (Buffer::Iterator start) override=0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual uint32_t GetSerializedSize () const =0
 
void Print (std::ostream &os) const override=0
 
virtual void Serialize (Buffer::Iterator start) const =0
 
virtual uint32_t Deserialize (Buffer::Iterator start)=0
 Deserialize the object from a buffer iterator.
 
virtual uint32_t Deserialize (Buffer::Iterator start, Buffer::Iterator end)
 Deserialize the object from a buffer iterator.
 
virtual void Print (std::ostream &os) const =0
 Print the object contents.
 
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
 Virtual destructor.
 
void GetAttribute (std::string name, AttributeValue &value) const
 Get the value of an attribute, raising fatal errors if unsuccessful.
 
bool GetAttributeFailSafe (std::string name, AttributeValue &value) const
 Get the value of an attribute without raising errors.
 
virtual TypeId GetInstanceTypeId () const =0
 Get the most derived TypeId for this Object.
 
void SetAttribute (std::string name, const AttributeValue &value)
 Set a single attribute, raising fatal errors if unsuccessful.
 
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
 Set a single attribute without raising errors.
 
bool TraceConnect (std::string name, std::string context, const CallbackBase &cb)
 Connect a TraceSource to a Callback with a context.
 
bool TraceConnectWithoutContext (std::string name, const CallbackBase &cb)
 Connect a TraceSource to a Callback without a context.
 
bool TraceDisconnect (std::string name, std::string context, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected with a context.
 
bool TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb)
 Disconnect from a TraceSource a Callback previously connected without a context.
 

Static Public Member Functions

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

Private Attributes

std::vector< EpcX2Sap::CellMeasurementResultItemm_cellMeasurementResultList
 cell measurement result list
 
uint16_t m_enb1MeasurementId
 ENB1 measurement.
 
uint16_t m_enb2MeasurementId
 ENB2 measurement.
 
uint32_t m_headerLength
 header length
 
uint32_t m_numberOfIes
 number of IEs
 

Additional Inherited Members

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

Detailed Description

Constructor & Destructor Documentation

◆ EpcX2ResourceStatusUpdateHeader()

ns3::EpcX2ResourceStatusUpdateHeader::EpcX2ResourceStatusUpdateHeader ( )

Definition at line 1319 of file epc-x2-header.cc.

References m_cellMeasurementResultList.

◆ ~EpcX2ResourceStatusUpdateHeader()

ns3::EpcX2ResourceStatusUpdateHeader::~EpcX2ResourceStatusUpdateHeader ( )
override

Member Function Documentation

◆ Deserialize()

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::Deserialize ( Buffer::Iterator  start)
overridevirtual
Parameters
startan iterator which points to where the header should read from.
Returns
the number of bytes read.

This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. The data read is expected to match bit-for-bit the representation of this header in real networks.

Note that data is not actually removed from the buffer to which the iterator points. Both Packet::RemoveHeader() and Packet::PeekHeader() call Deserialize(), but only the RemoveHeader() has additional statements to remove the header bytes from the underlying buffer and associated metadata.

Implements ns3::Header.

Definition at line 1396 of file epc-x2-header.cc.

References ns3::EpcX2Sap::CompositeAvailCapacity::capacityValue, ns3::EpcX2Sap::CompositeAvailCapacity::cellCapacityClassValue, ns3::EpcX2Sap::CellMeasurementResultItem::dlCompositeAvailableCapacity, ns3::EpcX2Sap::CellMeasurementResultItem::dlGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::dlHardwareLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::dlNonGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::dlS1TnlLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::dlTotalPrbUsage, GetSerializedSize(), m_cellMeasurementResultList, m_enb1MeasurementId, m_enb2MeasurementId, m_headerLength, m_numberOfIes, ns3::Buffer::Iterator::ReadNtohU16(), ns3::Buffer::Iterator::ReadU8(), ns3::EpcX2Sap::CellMeasurementResultItem::sourceCellId, ns3::EpcX2Sap::CellMeasurementResultItem::ulCompositeAvailableCapacity, ns3::EpcX2Sap::CellMeasurementResultItem::ulGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::ulHardwareLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::ulNonGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::ulS1TnlLoadIndicator, and ns3::EpcX2Sap::CellMeasurementResultItem::ulTotalPrbUsage.

+ Here is the call graph for this function:

◆ GetCellMeasurementResultList()

std::vector< EpcX2Sap::CellMeasurementResultItem > ns3::EpcX2ResourceStatusUpdateHeader::GetCellMeasurementResultList ( ) const

Get cell measurement results list function.

Returns
the cell measurement results list

Definition at line 1468 of file epc-x2-header.cc.

References m_cellMeasurementResultList.

Referenced by ns3::EpcX2::RecvFromX2cSocket().

+ Here is the caller graph for this function:

◆ GetEnb1MeasurementId()

uint16_t ns3::EpcX2ResourceStatusUpdateHeader::GetEnb1MeasurementId ( ) const

Get ENB1 measurement ID function.

Returns
the ENB1 measurement ID

Definition at line 1444 of file epc-x2-header.cc.

References m_enb1MeasurementId.

Referenced by ns3::EpcX2::RecvFromX2cSocket().

+ Here is the caller graph for this function:

◆ GetEnb2MeasurementId()

uint16_t ns3::EpcX2ResourceStatusUpdateHeader::GetEnb2MeasurementId ( ) const

Get ENB2 measurement ID function.

Returns
the ENB2 measurement ID

Definition at line 1456 of file epc-x2-header.cc.

References m_enb2MeasurementId.

Referenced by ns3::EpcX2::RecvFromX2cSocket().

+ Here is the caller graph for this function:

◆ GetInstanceTypeId()

TypeId ns3::EpcX2ResourceStatusUpdateHeader::GetInstanceTypeId ( ) const
overridevirtual

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 1348 of file epc-x2-header.cc.

References GetTypeId().

+ Here is the call graph for this function:

◆ GetLengthOfIes()

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::GetLengthOfIes ( ) const

Get length of IEs function.

Returns
the length of IEs

Definition at line 1485 of file epc-x2-header.cc.

References m_headerLength.

Referenced by ns3::EpcX2::DoSendResourceStatusUpdate().

+ Here is the caller graph for this function:

◆ GetNumberOfIes()

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::GetNumberOfIes ( ) const

Get number of IEs function.

Returns
the number of IEs

Definition at line 1491 of file epc-x2-header.cc.

References m_numberOfIes.

Referenced by ns3::EpcX2::DoSendResourceStatusUpdate().

+ Here is the caller graph for this function:

◆ GetSerializedSize()

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::GetSerializedSize ( ) const
overridevirtual
Returns
the expected size of the header.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. This method should return the number of bytes which are needed to store the full header data by Serialize.

Implements ns3::Header.

Definition at line 1354 of file epc-x2-header.cc.

References m_headerLength.

Referenced by Deserialize().

+ Here is the caller graph for this function:

◆ GetTypeId()

TypeId ns3::EpcX2ResourceStatusUpdateHeader::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 1338 of file epc-x2-header.cc.

References ns3::TypeId::SetParent().

Referenced by GetInstanceTypeId().

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

◆ Print()

void ns3::EpcX2ResourceStatusUpdateHeader::Print ( std::ostream &  os) const
overridevirtual
Parameters
osoutput stream This method is used by Packet::Print to print the content of a header as ascii data to a c++ output stream. Although the header is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5

Implements ns3::Header.

Definition at line 1436 of file epc-x2-header.cc.

References m_cellMeasurementResultList, m_enb1MeasurementId, and m_enb2MeasurementId.

◆ Serialize()

void ns3::EpcX2ResourceStatusUpdateHeader::Serialize ( Buffer::Iterator  start) const
overridevirtual
Parameters
startan iterator which points to where the header should be written.

This method is used by Packet::AddHeader to store a header into the byte buffer of a packet. The data written is expected to match bit-for-bit the representation of this header in a real network.

Implements ns3::Header.

Definition at line 1360 of file epc-x2-header.cc.

References ns3::EpcX2Sap::CompositeAvailCapacity::capacityValue, ns3::EpcX2Sap::CompositeAvailCapacity::cellCapacityClassValue, ns3::EpcX2Sap::CellMeasurementResultItem::dlCompositeAvailableCapacity, ns3::EpcX2Sap::CellMeasurementResultItem::dlGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::dlHardwareLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::dlNonGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::dlS1TnlLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::dlTotalPrbUsage, m_cellMeasurementResultList, m_enb1MeasurementId, m_enb2MeasurementId, ns3::EpcX2Sap::CellMeasurementResultItem::sourceCellId, ns3::EpcX2Sap::CellMeasurementResultItem::ulCompositeAvailableCapacity, ns3::EpcX2Sap::CellMeasurementResultItem::ulGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::ulHardwareLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::ulNonGbrPrbUsage, ns3::EpcX2Sap::CellMeasurementResultItem::ulS1TnlLoadIndicator, ns3::EpcX2Sap::CellMeasurementResultItem::ulTotalPrbUsage, ns3::Buffer::Iterator::WriteHtonU16(), and ns3::Buffer::Iterator::WriteU8().

+ Here is the call graph for this function:

◆ SetCellMeasurementResultList()

void ns3::EpcX2ResourceStatusUpdateHeader::SetCellMeasurementResultList ( std::vector< EpcX2Sap::CellMeasurementResultItem cellMeasurementResultList)

Set cell measurement results list function.

Parameters
cellMeasurementResultListthe cell measurement results list

Definition at line 1474 of file epc-x2-header.cc.

References m_cellMeasurementResultList, and m_headerLength.

Referenced by ns3::EpcX2::DoSendResourceStatusUpdate().

+ Here is the caller graph for this function:

◆ SetEnb1MeasurementId()

void ns3::EpcX2ResourceStatusUpdateHeader::SetEnb1MeasurementId ( uint16_t  enb1MeasurementId)

Set ENB1 measurement ID function.

Parameters
enb1MeasurementIdthe ENB1 measurement ID

Definition at line 1450 of file epc-x2-header.cc.

References m_enb1MeasurementId.

Referenced by ns3::EpcX2::DoSendResourceStatusUpdate().

+ Here is the caller graph for this function:

◆ SetEnb2MeasurementId()

void ns3::EpcX2ResourceStatusUpdateHeader::SetEnb2MeasurementId ( uint16_t  enb2MeasurementId)

Set ENB2 measurement ID function.

Parameters
enb2MeasurementIdENB2 measruement ID

Definition at line 1462 of file epc-x2-header.cc.

References m_enb2MeasurementId.

Referenced by ns3::EpcX2::DoSendResourceStatusUpdate().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_cellMeasurementResultList

std::vector<EpcX2Sap::CellMeasurementResultItem> ns3::EpcX2ResourceStatusUpdateHeader::m_cellMeasurementResultList
private

◆ m_enb1MeasurementId

uint16_t ns3::EpcX2ResourceStatusUpdateHeader::m_enb1MeasurementId
private

◆ m_enb2MeasurementId

uint16_t ns3::EpcX2ResourceStatusUpdateHeader::m_enb2MeasurementId
private

◆ m_headerLength

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::m_headerLength
private

◆ m_numberOfIes

uint32_t ns3::EpcX2ResourceStatusUpdateHeader::m_numberOfIes
private

number of IEs

Definition at line 640 of file epc-x2-header.h.

Referenced by ~EpcX2ResourceStatusUpdateHeader(), Deserialize(), and GetNumberOfIes().


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