14 #ifndef TGO4HDF5DATAHANDLE_H 15 #define TGO4HDF5DATAHANDLE_H 60 H5::CompType *
GetType()
const {
return fxType; }
64 void *
Data()
const {
return fxData; }
67 void InsertTypeMember(
const H5std_string &name,
size_t offset,
const H5::DataType &new_member);
74 virtual void SetObjectPointer(
void *memptr);
83 void SetTopEventClass(
const char *classname);
93 virtual void BuildReadDataset(H5::H5File *file,
TGo4HDF5Source* parent);
96 virtual void BuildWriteDataset(H5::H5File *file);
99 virtual void Read(hsize_t sequencenum, H5::H5File *file);
102 virtual void Write(hsize_t sequencenum, H5::H5File *file);
107 TGo4HDF5DataHandle *AddSubMember(
const char *name,
size_t datasize,
const char *collectiontype =
nullptr);
117 void SetAllSubMembersActive(Bool_t on);
128 H5::CompType* fxType{
nullptr};
135 H5::DataSpace* fxDataSpace{
nullptr};
141 ULong_t fiEntries{0};
146 void *fxData{
nullptr};
149 size_t fiParentOffset{0};
153 size_t fiDataSize{0};
157 size_t fiReadOffset{0};
179 Bool_t fbDataSetExists{kFALSE};
183 Bool_t fbDataSetActive{kFALSE};
208 void BuildReadDataset(H5::H5File*file,
TGo4HDF5Source* parent)
override;
211 void BuildWriteDataset(H5::H5File* file)
override;
215 void Read(hsize_t sequencenum, H5::H5File*file)
override;
218 void Write(hsize_t sequencenum, H5::H5File*file)
override;
224 void AllocReadBuffer(
size_t size);
228 Char_t *fxReadBuffer{
nullptr};
258 void BuildReadDataset(H5::H5File*file,
TGo4HDF5Source* parent)
override;
261 void BuildWriteDataset(H5::H5File* file)
override;
265 void Read(hsize_t sequencenum, H5::H5File* file)
override;
268 void Write(hsize_t sequencenum, H5::H5File* file)
override;
303 void SetObjectPointer(
void *memptr)
override;
307 void BuildReadDataset(H5::H5File*file,
TGo4HDF5Source* parent)
override;
310 void BuildWriteDataset(H5::H5File* file)
override;
313 void Read(hsize_t sequencenum, H5::H5File* file)
override;
316 void Write(hsize_t sequencenum, H5::H5File* ile)
override;
325 H5::CompType* fxCollection{
nullptr};
335 size_t fiElementSize{0};
368 void SetObjectPointer(
void *memptr)
override;
372 void BuildReadDataset(H5::H5File*file,
TGo4HDF5Source* parent)
override;
375 void BuildWriteDataset(H5::H5File* file)
override;
378 void Read(hsize_t sequencenum, H5::H5File* file)
override;
381 void Write(hsize_t sequencenum, H5::H5File* file)
override;
394 #endif //TGO4HDF5DATAHANDLE_H void SetInnerClassName(const char *nm)
void SetActive(Bool_t on)
H5::CompType * GetType() const
TGo4HDF5DataHandle * CreateDataHandle(const char *name, size_t datasize, const char *type)
H5::DataSpace fxFileSpace
std::vector< TGo4HDF5DataHandle * > fxSubcomponents
TGo4HDF5DataHandleFactory()
unsigned long fx_Begin_ptr
void SetParentOffset(size_t off)
static TGo4HDF5DataHandleFactory fxFactory
const char * GetTypeName() const
TGo4HDF5VarContainer fxVarHandle
TGo4HDF5DataHandle * GetSubMember(UInt_t ix)
void SetMemberName(const char *name)
void SetElementSize(size_t len)
void SetMemberClass(const char *clname)