EMANE  1.2.1
EMANE::Controls::R2RIQueueMetricControlMessage Class Reference

R2RI Queue Metric Control Message is sent to an NEM's transport layer to convey information about MAC layer queues. More...

#include <r2riqueuemetriccontrolmessage.h>

Inheritance diagram for EMANE::Controls::R2RIQueueMetricControlMessage:
EMANE::ControlMessage EMANE::Serializable EMANE::Cloneable< ControlMessage >

Public Types

enum  { IDENTIFIER = EMANE_CONTROL_MEASSGE_R2RI_QUEUE_METRIC }
 

Public Member Functions

R2RIQueueMetricControlMessageclone () const override
 
 ~R2RIQueueMetricControlMessage ()
 
const R2RIQueueMetricsgetQueueMetrics () const
 
std::string serialize () const override
 
ControlMessageId getId () const
 

Static Public Member Functions

static R2RIQueueMetricControlMessagecreate (const Serialization &serialization)
 
static R2RIQueueMetricControlMessagecreate (const R2RIQueueMetrics &queueMetrics)
 

Detailed Description

R2RI Queue Metric Control Message is sent to an NEM's transport layer to convey information about MAC layer queues.

Note
This control message will be encapsulated in a SerializedControlMessage when delivered as via EMANE::DownstreamTransport::processDownstreamControl() or EMANE::UpstreamTransport::processUpstreamControl().
Instances are immutable

Definition at line 58 of file r2riqueuemetriccontrolmessage.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
IDENTIFIER 

Definition at line 125 of file r2riqueuemetriccontrolmessage.h.

Constructor & Destructor Documentation

◆ ~R2RIQueueMetricControlMessage()

EMANE::Controls::R2RIQueueMetricControlMessage::~R2RIQueueMetricControlMessage ( )

Destroys an instance

Definition at line 60 of file r2riqueuemetriccontrolmessage.cc.

Member Function Documentation

◆ clone()

EMANE::Controls::R2RIQueueMetricControlMessage * EMANE::Controls::R2RIQueueMetricControlMessage::clone ( ) const
overridevirtual

Clones the control message on the heap

Returns
cloned message
Note
Caller assumes ownership of the clone

Implements EMANE::Cloneable< ControlMessage >.

Definition at line 134 of file r2riqueuemetriccontrolmessage.cc.

◆ create() [1/2]

EMANE::Controls::R2RIQueueMetricControlMessage * EMANE::Controls::R2RIQueueMetricControlMessage::create ( const Serialization serialization)
static

Creates an R2RIQueueMetricControlMessage from a serialization on the heap

Parameters
serializationMessage serialization
Exceptions
SerializationExceptionwhen a valid message cannot be de-serialized
Note
Once a control message is passed to another NEM layer using EMANE::UpstreamTransport::processUpstreamPacket(), EMANE::UpstreamTransport::processUpstreamControl(), EMANE::DownstreamTransport::processDownstreamPacket() or EMANE::DownstreamTransport::processDownstreamControl() object ownership is transferred to the emulator infrastructure along with deallocation responsibility. It is not valid to use a control message instance after it has been passed to another layer.

Definition at line 108 of file r2riqueuemetriccontrolmessage.cc.

◆ create() [2/2]

EMANE::Controls::R2RIQueueMetricControlMessage * EMANE::Controls::R2RIQueueMetricControlMessage::create ( const R2RIQueueMetrics queueMetrics)
static

Creates an R2RIQueueMetricControlMessage on the heap

Parameters
queueMetricsQueue metrics
Note
Once a control message is passed to another NEM layer using EMANE::UpstreamTransport::processUpstreamPacket(), EMANE::UpstreamTransport::processUpstreamControl(), EMANE::DownstreamTransport::processDownstreamPacket() or EMANE::DownstreamTransport::processDownstreamControl() object ownership is transferred to the emulator infrastructure along with deallocation responsibility. It is not valid to use a control message instance after it has been passed to another layer.

Definition at line 73 of file r2riqueuemetriccontrolmessage.cc.

◆ getId()

ControlMessageId EMANE::ControlMessage::getId ( ) const
inlineinherited

Gets the control message id

Returns
control messase id

Definition at line 64 of file controlmessage.h.

◆ getQueueMetrics()

const EMANE::Controls::R2RIQueueMetrics & EMANE::Controls::R2RIQueueMetricControlMessage::getQueueMetrics ( ) const

Gets the queue metrics

Returns
metrics

Definition at line 67 of file r2riqueuemetriccontrolmessage.cc.

◆ serialize()

EMANE::Serialization EMANE::Controls::R2RIQueueMetricControlMessage::serialize ( ) const
overridevirtual

Serializes the instance

Exceptions
SerializationExceptionif the instance cannot be serialized

Reimplemented from EMANE::Serializable.

Definition at line 78 of file r2riqueuemetriccontrolmessage.cc.


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