20#include "TDataMember.h" 
   21#include "TVirtualCollectionProxy.h" 
   22#include "TBaseClass.h" 
   39   GO4TRACE((15,
"TGo4HDF5Store::TGo4HDF5Store()", __LINE__, __FILE__));
 
 
   47   GO4TRACE((15,
"TGo4HDF5Store::TGo4HDF5Store(char*,...)", __LINE__, __FILE__));
 
 
   55   GO4TRACE((15,
"TGo4HDF5Store::TGo4HDF5Store(TGo4HDF5StoreParameter* par)", __LINE__, __FILE__));
 
   57      TGo4Log::Error(
"TGo4HDF5Store::TGo4HDF5Store(.., TGo4HDF5StoreParameter* is not specified");
 
   60   SetName(par->GetName());
 
 
   68   GO4TRACE((15,
"TGo4HDF5Store::~TGo4HDF5Store()", __LINE__, __FILE__));
 
 
   76   TString buffer(GetName());
 
   84         TGo4Log::Info(
"TGo4HDF5Store: Open file %s RECREATE", buffer.Data());
 
   85      } 
else if (
fiFlags == H5F_ACC_RDWR) {
 
   86         TGo4Log::Info(
"TGo4HDF5Store: Open file %s for UPDATE", buffer.Data());
 
   87      } 
else if (
fiFlags == H5F_ACC_EXCL) {
 
   88         TGo4Log::Info(
"TGo4HDF5Store: Open file %s exclusively", buffer.Data());
 
   93   } 
catch (H5::Exception &ex) {
 
   94      TString msg = TString::Format(
"OpenFile with HDF5 exception in %s : %s\n", ex.getCFuncName(), ex.getCDetailMsg());
 
 
  114   catch (H5::Exception &ex) {
 
  116         TString::Format(
"BuildDataSet with HDF5 exception in %s : %s\n", ex.getCFuncName(), ex.getCDetailMsg());
 
 
  124   GO4TRACE((12,
"TGo4HDF5Store::Store(TGo4EventElement *)", __LINE__, __FILE__));
 
  135   } 
catch (H5::Exception &ex) {
 
  136      TString msg = TString::Format(
"Store() with HDF5 exception in %s : %s\n", ex.getCFuncName(), ex.getCDetailMsg());
 
 
  170   TGo4Log::Info(
"TGo4HDF5Store: WriteToStore not yet implemented for auxiliary objects of class %s (name:%s)\n",ob->Class()->GetName(), ob->GetName());
 
 
The abstract base class for the data elements of which the unpacked events (or detector structure dat...
Central class of Go4Fit package.
UInt_t fiFlags
remember file property flags.
void BuildDataType(TGo4EventElement *event, TGo4HDF5DataHandle *parent=nullptr, Int_t index=0)
Prepare data type from event structure for hdf5.
UInt_t ConvertFileMode(Go4_H5_File_Flags flags)
Convert common go4 filemode flags to hdf5 flags:
Bool_t fbDataSetExists
True if branch already exists.
TGo4HDF5DataHandle * fxHandle
handle object to recursively treat the io of nested event components
hsize_t fiFillCount
counter of filled events.
virtual void DeleteDataSet()
delete dataset resource
virtual void CloseFile()
opens the hdf5 file depending on the setup
TGo4EventElement * fxEvent
Points to event structure to be filled into dataset.
static const char * fgcFILESUF
Standard suffix for file name.
H5::H5File * fxFile
the currently open hdf5 file
Go4_H5_File_Flags GetHDF5Flags() const
Int_t Store(TGo4EventElement *event) override
Stores eventelement event into the storage implementation.
void WriteToStore(TNamed *ob)
used by all Store methods to write with referencing event number in name
void BuildDataSet(TGo4EventElement *event) override
initialize dataset from event structure
void OpenFile(const char *name=nullptr) override
opens the hdf5 file depending on the setup
static void Info(const char *text,...) GO4_PRINTF_ARGS
User shortcut for message with prio 1.
static void Error(const char *text,...) GO4_PRINTF_ARGS
User shortcut for message with prio 3.
Base class for all parameter aggregations, e.g.