EMANE  1.0.1
EMANE::Controls::TimeStampControlMessage Class Reference

Time Stamp Control Message is sent to the emulator physical layer to specify the time that should be used for the tx time stamp in the EMANE::CommonPHYHeader. More...

#include <timestampcontrolmessage.h>

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

Public Types

enum  { IDENTIFIER = EMANE_CONTROL_MEASSGE_TIME_STAMP }
 

Public Member Functions

TimeStampControlMessageclone () const override
 
 ~TimeStampControlMessage ()
 
TimePoint getTimeStamp () const
 
ControlMessageId getId () const
 
virtual Serialization serialize () const
 

Static Public Member Functions

static TimeStampControlMessagecreate (const TimePoint &timestamp)
 

Detailed Description

Time Stamp Control Message is sent to the emulator physical layer to specify the time that should be used for the tx time stamp in the EMANE::CommonPHYHeader.

Note
If this control message is not sent along with the downstream packet the emulator physical layer will use the current time for the tx time stamp.
The Start of Transmission (SoT) is the tx time stamp + propagation delay + offset of the first frequency segment.
Instances are immutable

Definition at line 60 of file timestampcontrolmessage.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
IDENTIFIER 

Definition at line 101 of file timestampcontrolmessage.h.

Constructor & Destructor Documentation

◆ ~TimeStampControlMessage()

EMANE::Controls::TimeStampControlMessage::~TimeStampControlMessage ( )

Destroys an instance

Definition at line 60 of file timestampcontrolmessage.cc.

Member Function Documentation

◆ clone()

EMANE::Controls::TimeStampControlMessage * EMANE::Controls::TimeStampControlMessage::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 75 of file timestampcontrolmessage.cc.

◆ create()

EMANE::Controls::TimeStampControlMessage * EMANE::Controls::TimeStampControlMessage::create ( const TimePoint timestamp)
static

Creates a TimeStampControlMessage on the heap

Parameters
timestampTime value to use as the tx time in the common PHY Header
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 64 of file timestampcontrolmessage.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.

◆ getTimeStamp()

EMANE::TimePoint EMANE::Controls::TimeStampControlMessage::getTimeStamp ( ) const

Gets the time stamp

Returns
time stamp

Definition at line 69 of file timestampcontrolmessage.cc.

◆ serialize()


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