GSI Object Oriented Online Offline (Go4) GO4-6.4.0
Loading...
Searching...
No Matches
TGo4TreeStore.h
Go to the documentation of this file.
1// $Id$
2//-----------------------------------------------------------------------
3// The GSI Online Offline Object Oriented (Go4) Project
4// Experiment Data Processing at EE department, GSI
5//-----------------------------------------------------------------------
6// Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7// Planckstr. 1, 64291 Darmstadt, Germany
8// Contact: http://go4.gsi.de
9//-----------------------------------------------------------------------
10// This software can be used under the license agreements as stated
11// in Go4License.txt file which is part of the distribution.
12//-----------------------------------------------------------------------
13
14#ifndef TGO4TREESTORE_H
15#define TGO4TREESTORE_H
16
17#include "TGo4EventStore.h"
18
19class TFile;
20class TTree;
21class TBranch;
22class TGo4MainTree;
24class TGo4Parameter;
27
42 public:
43
44 TGo4TreeStore(const char *name,
45 TGo4EventElement *event,
46 Int_t splitlevel = 1,
47 Int_t bufsize = 64000,
48 const char *filename = nullptr,
49 Int_t compression = 5);
50
52
54
55 virtual ~TGo4TreeStore();
56
59
62 Int_t Store(TGo4EventElement *event) override;
63
65 void SetCompression(Int_t comp);
66
69 Int_t Store(TGo4Parameter *cali) override;
70
72 static const char *fgcFILESUF;
73
74 private:
75
78 TFile *fxFile{nullptr};
79
84
86 TTree *fxTree{nullptr};
87
89 TBranch *fxBranch{nullptr};
90
93
96
98 TString fcEventClass;
99
101 Int_t fiSplit{0};
102
104 Int_t fiBufsize{0};
105
106 ClassDefOverride(TGo4TreeStore,1)
107};
108
109#endif //TGO4TREESTORE_H
Data object for calibration of the input event.
The abstract base class for the data elements of which the unpacked events (or detector structure dat...
virtual Int_t Store(TGo4EventElement *event)=0
Stores eventelement event into the storage implementation.
Singleton containing and managing the main tree of the go4 analysis.
Base class for all parameter aggregations, e.g.
Go4 TTree storage.
void SetCompression(Int_t comp)
Set the file compression level.
TString fcEventClass
Class name of the event associated with this store.
virtual ~TGo4TreeStore()
TFile * fxFile
Optional file where our branches are located.
TBranch * fxBranch
The branch representing our store.
Int_t Store(TGo4EventElement *event) override
Stores eventelement event into the storage implementation.
TGo4EventCalibration * fxCalibration
Points to calibration structure to be filled into branch.
static const char * fgcFILESUF
Standard suffix for file name.
Int_t fiSplit
TBranch splitlevel.
TGo4TreeStore(const char *name, TGo4EventElement *event, Int_t splitlevel=1, Int_t bufsize=64000, const char *filename=nullptr, Int_t compression=5)
TGo4MainTree * fxSingletonTree
Reference to external tree singleton wrapper instance.
TTree * fxTree
Reference to the external main tree.
Int_t fiBufsize
buffer size for tree branch.
TGo4EventElement * fxEvent
Points to event structure to be filled into branch.