DUECA/DUSIME
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
dueca::DataTimeSpec Struct Reference

DataTimeSpec is a special bare-bones version of TimeSpec. More...

#include <DataTimeSpec.hxx>

Public Types

typedef DataTimeSpec __ThisDCOType__
 typedef for internal reference
 

Public Member Functions

 DataTimeSpec ()
 default constructor.
 
 DataTimeSpec (const TimeTickType &validity_start, const TimeTickType &validity_end)
 Constructor with arguments.
 
 DataTimeSpec (const DataTimeSpec &o)
 copy constructor.
 
 DataTimeSpec (::dueca::AmorphReStore &r)
 constructor to restore an DataTimeSpec from amorphous storage.
 
 ~DataTimeSpec ()
 destructor.
 
void packData (::dueca::AmorphStore &s) const
 packs the DataTimeSpec into amorphous storage.
 
void packDataDiff (::dueca::AmorphStore &s, const DataTimeSpec &ref) const
 packs the DataTimeSpec into amorphous storage.
 
void unPackData (::dueca::AmorphReStore &s)
 unpacks the DataTimeSpec from an amorphous storage.
 
void unPackDataDiff (::dueca::AmorphReStore &s)
 unpacks the differences for DataTimeSpec from an amorphous storage.
 
bool operator== (const DataTimeSpec &o) const
 Test for equality.
 
bool operator!= (const DataTimeSpec &o) const
 Test for inequality.
 
DataTimeSpecoperator= (const DataTimeSpec &o)
 Assignment operator.
 
std::ostream & print (std::ostream &s) const
 prints the DataTimeSpec to a stream.
 

Static Public Member Functions

static voidoperator new (size_t size)
 new operator "new", which places objects not on a heap, but in one of the memory arenas.
 
static void operator delete (void *p)
 new operator "delete", to go with the new version of operator new.
 
static voidoperator new (size_t size, DataTimeSpec *&o)
 placement "new", needed for stl.
 

Public Attributes

TimeTickType validity_start
 The time interval starts here.
 
TimeTickType validity_end
 The time interval ends before this.
 

Static Public Attributes

static const char *const classname
 The name of this class.
 
static const uint32_t magic_check_number
 a "magic" number, hashed out of the class definition, that will be used to check consistency of the sent objects across the dueca nodes.
 

Detailed Description

DataTimeSpec is a special bare-bones version of TimeSpec.

It is used for storage of the time specification with the data in channels. The advantage is that DataTimeSpec has no virtual functions and thus no virtual table pointer. This does not only make it smaller, but it also make the DataTimeSpec usable across a reflective/shared memory device where a virtual table pointer would be erroneous in all but one process.

Member Function Documentation

◆ operator new()

static void * dueca::DataTimeSpec::operator new ( size_t size)
static

new operator "new", which places objects not on a heap, but in one of the memory arenas.

This to speed up memory management.

◆ packDataDiff()

void dueca::DataTimeSpec::packDataDiff ( ::dueca::AmorphStore & s,
const DataTimeSpec & ref ) const

packs the DataTimeSpec into amorphous storage.

only differences with a previous object are packed.


The documentation for this struct was generated from the following file: