DUECA/DUSIME
Public Member Functions | List of all members
dueca::hdf5log::HDF5DCOMetaFunctor Class Referenceabstract

metafunctor to access DCO HDF5 facilities. More...

Inheritance diagram for dueca::hdf5log::HDF5DCOMetaFunctor:
Inheritance graph
[legend]
Collaboration diagram for dueca::hdf5log::HDF5DCOMetaFunctor:
Collaboration graph
[legend]

Public Member Functions

 HDF5DCOMetaFunctor ()
 Constructor.
 
 ~HDF5DCOMetaFunctor ()
 Destructor.
 
virtual const H5::DataType * operator() ()
 Get a HDF5 datatype; not always defined!
 
virtual HDF5DCOWriteFunctorgetWriteFunctor (std::weak_ptr< H5::H5File > file, const std::string &path, size_t chunksize, const std::string &label, const dueca::DataTimeSpec *startend, bool compress=false, bool writeticks=true)=0
 Get an arrayed HDF5 channel reading & file writing functor. More...
 
virtual HDF5DCOReadFunctorgetReadFunctor (std::weak_ptr< H5::H5File > file, const std::string &path, bool readticks=true)=0
 Get an HDF5 channel writing & file reading functor. More...
 
- Public Member Functions inherited from dueca::DCOMetaFunctor
 DCOMetaFunctor ()
 Constructor.
 
virtual ~DCOMetaFunctor ()
 Destructor.
 

Detailed Description

metafunctor to access DCO HDF5 facilities.

Two modes of interaction

path/tick - for DUECA tick values
path/data/<member1> - first data member
path/data/<membern> - datasets for all data members
for the future, if the DCO has a parent class, the structure
is deepened further; note that currently the parent data is not
written.
path/<Parent> - ONLY for DCO with parent class
path/<Parent>/data - all the members of this parent
and possibly:
path/<Parent>/<Parent2>/data etc.

Member Function Documentation

◆ getWriteFunctor()

virtual HDF5DCOWriteFunctor* dueca::hdf5log::HDF5DCOMetaFunctor::getWriteFunctor ( std::weak_ptr< H5::H5File >  file,
const std::string &  path,
size_t  chunksize,
const std::string &  label,
const dueca::DataTimeSpec startend,
bool  compress = false,
bool  writeticks = true 
)
pure virtual

Get an arrayed HDF5 channel reading & file writing functor.

Parameters
fileHDF5 file on which to write
pathBase path for writing the data.
chunksizeSize of data chunks.
labelLabel to be written to the file
startendPointer to a time spec controlling run/pause in logging
compressYou can guess
writeticksIf true, time is also logged
Returns
A functor object, that can be accepted by a channel token to apply the operation, in this case writing data to HDF5 file

◆ getReadFunctor()

virtual HDF5DCOReadFunctor* dueca::hdf5log::HDF5DCOMetaFunctor::getReadFunctor ( std::weak_ptr< H5::H5File >  file,
const std::string &  path,
bool  readticks = true 
)
pure virtual

Get an HDF5 channel writing & file reading functor.

Parameters
fileHDF5 file from which to read.
pathBase path for reading the data.
readticksIf true, time also read from the file
Returns
A functor object, that can be accepted by a channel token to apply the operation, in this case writing data to HDF5 file

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