GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
Public Member Functions | Protected Attributes | List of all members
TGo4HDF5VectorDataHandle Class Reference

#include <TGo4HDF5DataHandle.h>

+ Inheritance diagram for TGo4HDF5VectorDataHandle:

Public Member Functions

 TGo4HDF5VectorDataHandle (const char *name, size_t datasize)
 
virtual ~TGo4HDF5VectorDataHandle ()
 
void SetElementSize (size_t len)
 
void SetObjectPointer (void *memptr) override
 
void BuildReadDataset (H5::H5File *file, TGo4HDF5Source *parent) override
 
void BuildWriteDataset (H5::H5File *file) override
 
void Read (hsize_t sequencenum, H5::H5File *file) override
 
void Write (hsize_t sequencenum, H5::H5File *ile) override
 
- Public Member Functions inherited from TGo4HDF5BasicDataHandle
 TGo4HDF5BasicDataHandle (const char *name, size_t datasize)
 
virtual ~TGo4HDF5BasicDataHandle ()
 
- Public Member Functions inherited from TGo4HDF5DataHandle
 TGo4HDF5DataHandle (const char *name, size_t datasize)
 
virtual ~TGo4HDF5DataHandle ()
 
H5::CompType * GetType () const
 
const char * GetTypeName () const
 
void * Data () const
 
void InsertTypeMember (const H5std_string &name, size_t offset, const H5::DataType &new_member)
 
void SetParentOffset (size_t off)
 
void SetTopEvent (TGo4EventElement *eve)
 
void SetTopEventClass (const char *classname)
 
void SetMemberName (const char *name)
 
void SetMemberClass (const char *clname)
 
TGo4HDF5DataHandleAddSubMember (const char *name, size_t datasize, const char *collectiontype=nullptr)
 
TGo4HDF5DataHandleGetSubMember (UInt_t ix)
 
TGo4HDF5DataHandleFindSubMember (const char *name)
 
void SetActive (Bool_t on)
 
void SetAllSubMembersActive (Bool_t on)
 

Protected Attributes

H5::CompType * fxCollection {nullptr}
 
TGo4HDF5VarContainer fxVarHandle
 
size_t fiElementSize {0}
 
- Protected Attributes inherited from TGo4HDF5BasicDataHandle
Char_t * fxReadBuffer {nullptr}
 
- Protected Attributes inherited from TGo4HDF5DataHandle
TString fxTypeName
 
H5::CompType * fxType {nullptr}
 
H5::DataSet fxDataSet
 
H5::DataSpace * fxDataSpace {nullptr}
 
H5::DataSpace fxFileSpace
 
ULong_t fiEntries {0}
 
void * fxData {nullptr}
 
size_t fiParentOffset {0}
 
size_t fiDataSize {0}
 
size_t fiReadOffset {0}
 
std::vector< TGo4HDF5DataHandle * > fxSubcomponents
 
TString fxMemberHandle
 
TString fxMemberClass
 
TGo4EventElementfxEvent {nullptr}
 
TString fxEventClass
 
TGo4HDF5SourcefxParentSource {nullptr}
 
Bool_t fbDataSetExists {kFALSE}
 
Bool_t fbDataSetActive {kFALSE}
 

Additional Inherited Members

- Static Public Attributes inherited from TGo4HDF5DataHandle
static TGo4HDF5DataHandleFactory fxFactory
 
- Protected Member Functions inherited from TGo4HDF5BasicDataHandle
void AllocReadBuffer (size_t size)
 

Detailed Description

Handle object to access datasets in hdf5 formatted file with go4 event data implementation for std::vector collections

Definition at line 289 of file TGo4HDF5DataHandle.h.

Constructor & Destructor Documentation

◆ TGo4HDF5VectorDataHandle()

TGo4HDF5VectorDataHandle::TGo4HDF5VectorDataHandle ( const char *  name,
size_t  datasize 
)

◆ ~TGo4HDF5VectorDataHandle()

TGo4HDF5VectorDataHandle::~TGo4HDF5VectorDataHandle ( )
virtual

Definition at line 524 of file TGo4HDF5DataHandle.cxx.

References fxCollection, TGo4HDF5DataHandle::fxTypeName, and go4hdfdbg.

Member Function Documentation

◆ BuildReadDataset()

void TGo4HDF5VectorDataHandle::BuildReadDataset ( H5::H5File *  file,
TGo4HDF5Source parent 
)
overridevirtual

create datasets and buffers for reading this structure from hdf5 file. parent pointer is given for error handling case

Reimplemented from TGo4HDF5BasicDataHandle.

Reimplemented in TGo4HDF5SubVectorDataHandle.

Definition at line 587 of file TGo4HDF5DataHandle.cxx.

References TGo4HDF5BasicDataHandle::BuildReadDataset().

◆ BuildWriteDataset()

void TGo4HDF5VectorDataHandle::BuildWriteDataset ( H5::H5File *  file)
overridevirtual

◆ Read()

void TGo4HDF5VectorDataHandle::Read ( hsize_t  sequencenum,
H5::H5File *  file 
)
overridevirtual

◆ SetElementSize()

void TGo4HDF5VectorDataHandle::SetElementSize ( size_t  len)
inline

remember size of a single element (structure) in this collection, if it is one. Otherwise this is size of this class itself

Definition at line 300 of file TGo4HDF5DataHandle.h.

Referenced by TGo4HDF5DataHandleFactory::CreateDataHandle().

◆ SetObjectPointer()

void TGo4HDF5VectorDataHandle::SetObjectPointer ( void *  memptr)
overridevirtual

define location of corresponding object in memory. This is base pointer for all member specific offsets.

Reimplemented from TGo4HDF5DataHandle.

Reimplemented in TGo4HDF5SubVectorDataHandle.

Definition at line 530 of file TGo4HDF5DataHandle.cxx.

References TGo4HDF5DataHandle::fbDataSetActive, fiElementSize, TGo4HDF5VarContainer::fxArray, TGo4HDF5DataHandle::fxData, fxVarHandle, go4hdfdbg, and TGo4HDF5DataHandle::SetObjectPointer().

Referenced by TGo4HDF5SubVectorDataHandle::SetObjectPointer().

◆ Write()

void TGo4HDF5VectorDataHandle::Write ( hsize_t  sequencenum,
H5::H5File *  ile 
)
overridevirtual

Member Data Documentation

◆ fiElementSize

size_t TGo4HDF5VectorDataHandle::fiElementSize {0}
protected

size of the (collection element) structure

Definition at line 335 of file TGo4HDF5DataHandle.h.

Referenced by Read(), SetObjectPointer(), and TGo4HDF5SubVectorDataHandle::SetObjectPointer().

◆ fxCollection

H5::CompType* TGo4HDF5VectorDataHandle::fxCollection {nullptr}
protected

collection type with fxType as entries

Definition at line 325 of file TGo4HDF5DataHandle.h.

Referenced by TGo4HDF5VectorDataHandle(), and ~TGo4HDF5VectorDataHandle().

◆ fxVarHandle

TGo4HDF5VarContainer TGo4HDF5VectorDataHandle::fxVarHandle
protected

handle for variable arrays

Definition at line 329 of file TGo4HDF5DataHandle.h.

Referenced by BuildWriteDataset(), Read(), SetObjectPointer(), TGo4HDF5SubVectorDataHandle::SetObjectPointer(), and Write().


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