YARP
Yet Another Robot Platform
yarp::os::Stamp Class Reference

An abstraction for a time stamp and/or sequence number. More...

#include <yarp/os/Stamp.h>

+ Inheritance diagram for yarp::os::Stamp:

Detailed Description

An abstraction for a time stamp and/or sequence number.

Definition at line 24 of file Stamp.h.

Public Member Functions

 Stamp ()
 Construct an invalid Stamp. More...
 
 Stamp (int count, double time)
 Construct a Stamp with a given sequence number and time. More...
 
int getCount () const
 Get the sequence number. More...
 
double getTime () const
 Get the time stamp. More...
 
bool isValid () const
 Check if this Stamp is valid. More...
 
int getMaxCount () const
 Get the maximum sequence number, after which an incrementing sequence should return to zero. More...
 
void update ()
 Set the timestamp to the current time, and increment the sequence number (wrapping to 0 if the sequence number exceeds Stamp::getMaxCount()) More...
 
void update (double time)
 Set the timestamp to a given time, and increments the sequence number (wrapping to 0 if the sequence exceeds Stamp::getMaxCount()) More...
 
bool read (ConnectionReader &connection) override
 Read this object from a network connection. More...
 
bool write (ConnectionWriter &connection) const override
 Write this object to a network connection. More...
 
- Public Member Functions inherited from yarp::os::Portable
virtual Type getType () const
 
- Public Member Functions inherited from yarp::os::PortReader
virtual ~PortReader ()
 Destructor. More...
 
virtual Type getReadType () const
 
- Public Member Functions inherited from yarp::os::PortWriter
virtual ~PortWriter ()
 Destructor. More...
 
virtual void onCompletion () const
 This is called when the port has finished all writing operations. More...
 
virtual void onCommencement () const
 This is called when the port is about to begin writing operations. More...
 
virtual yarp::os::Type getWriteType () const
 

Private Attributes

NetInt32 sequenceNumber
 
NetFloat64 timeStamp
 

Additional Inherited Members

- Static Public Member Functions inherited from yarp::os::Portable
static bool copyPortable (PortWriter &writer, PortReader &reader)
 Copy one portable to another, via writing and reading. More...
 

Constructor & Destructor Documentation

◆ Stamp() [1/2]

yarp::os::Stamp::Stamp ( )
explicit

Construct an invalid Stamp.

Definition at line 25 of file Stamp.cpp.

◆ Stamp() [2/2]

yarp::os::Stamp::Stamp ( int  count,
double  time 
)

Construct a Stamp with a given sequence number and time.

Parameters
countthe sequence number.
timethe time stamp (in seconds, relative to an arbitrary. zero time)

Definition at line 19 of file Stamp.cpp.

Member Function Documentation

◆ getCount()

int yarp::os::Stamp::getCount ( ) const

Get the sequence number.

Returns
the sequence number.

Definition at line 31 of file Stamp.cpp.

◆ getMaxCount()

int yarp::os::Stamp::getMaxCount ( ) const

Get the maximum sequence number, after which an incrementing sequence should return to zero.

Returns
the maximum sequence number.

Definition at line 107 of file Stamp.cpp.

◆ getTime()

double yarp::os::Stamp::getTime ( ) const

Get the time stamp.

Returns
the time stamp

Definition at line 36 of file Stamp.cpp.

◆ isValid()

bool yarp::os::Stamp::isValid ( ) const

Check if this Stamp is valid.

Returns
true if this is a valid Stamp

Definition at line 41 of file Stamp.cpp.

◆ read()

bool yarp::os::Stamp::read ( ConnectionReader reader)
overridevirtual

Read this object from a network connection.

Override this for your particular class.

Parameters
readeran interface to the network connection for reading
Returns
true iff the object is successfully read

Implements yarp::os::Portable.

Definition at line 46 of file Stamp.cpp.

◆ update() [1/2]

void yarp::os::Stamp::update ( )

Set the timestamp to the current time, and increment the sequence number (wrapping to 0 if the sequence number exceeds Stamp::getMaxCount())

Definition at line 113 of file Stamp.cpp.

◆ update() [2/2]

void yarp::os::Stamp::update ( double  time)

Set the timestamp to a given time, and increments the sequence number (wrapping to 0 if the sequence exceeds Stamp::getMaxCount())

Definition at line 124 of file Stamp.cpp.

◆ write()

bool yarp::os::Stamp::write ( ConnectionWriter writer) const
overridevirtual

Write this object to a network connection.

Override this for your particular class. Be aware that depending on the nature of the connections a port has, and what protocol they use, and how efficient the YARP implementation is, this method may be called once, twice, or many times, as the result of a single call to Port::write

Parameters
writeran interface to the network connection for writing
Returns
true iff the object is successfully written

Implements yarp::os::Portable.

Definition at line 89 of file Stamp.cpp.

Member Data Documentation

◆ sequenceNumber

NetInt32 yarp::os::Stamp::sequenceNumber
private

Definition at line 27 of file Stamp.h.

◆ timeStamp

NetFloat64 yarp::os::Stamp::timeStamp
private

Definition at line 28 of file Stamp.h.


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