Logo ROOT   6.21/01
Reference Guide
REveVSD.hxx
Go to the documentation of this file.
1 // @(#)root/eve7:$Id$
2 // Authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2019, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT7_REveVSD
13 #define ROOT7_REveVSD
14 
15 #include <ROOT/REveUtil.hxx>
16 #include <ROOT/REveVSDStructs.hxx>
17 
18 class TTree;
19 class TFile;
20 class TDirectory;
21 
22 namespace ROOT {
23 namespace Experimental {
24 
25 class REveVSD : public TObject {
26  REveVSD(const REveVSD &) = delete;
27  REveVSD &operator=(const REveVSD &) = delete;
28 
29 protected:
30  TFile *fFile{nullptr}; //!
31  TDirectory *fDirectory{nullptr}; //!
32 
33  Int_t fBuffSize{0}; //!
34  Int_t fVerbose{0}; //!
35 
36 public:
37  TTree *fTreeK{nullptr}; //! Kinematics.
38  TTree *fTreeH{nullptr}; //! Hits.
39  TTree *fTreeC{nullptr}; //! Clusters.
40  TTree *fTreeR{nullptr}; //! Reconstructed tracks.
41  TTree *fTreeKK{nullptr}; //! Kinks.
42  TTree *fTreeV0{nullptr}; //! VO's.
43  TTree *fTreeCC{nullptr}; //! Cascades.
44  TTree *fTreeGI{nullptr}; //! Sim-Rec cross references.
45 
46  REveMCTrack fK, *fpK{nullptr}; //!
47  REveHit fH, *fpH{nullptr}; //!
48  REveCluster fC, *fpC{nullptr}; //!
49  REveRecTrack fR, *fpR{nullptr}; //!
50  REveRecKink fKK, *fpKK{nullptr}; //!
51  REveRecV0 fV0, *fpV0{nullptr}; //!
52  REveRecCascade fCC, *fpCC{nullptr}; //!
53  REveMCRecCrossRef fGI, *fpGI{nullptr}; //!
54 
55 public:
56  REveVSD(const char *name = "REveVSD", const char *title = "");
57  virtual ~REveVSD();
58 
59  virtual void SetDirectory(TDirectory *dir);
60 
61  virtual void CreateTrees();
62  virtual void DeleteTrees();
63 
64  virtual void CreateBranches();
65  virtual void WriteTrees();
66 
67  virtual void LoadTrees();
68  virtual void SetBranchAddresses();
69 
71 
72  ClassDef(REveVSD, 1); // Visualization Summary Data - a collection of trees holding standard event data in experiment independent format.
73 };
74 
75 } // namespace Experimental
76 } // namespace ROOT
77 
78 #endif
TTree * fTreeR
Clusters.
Definition: REveVSD.hxx:40
Returns the available number of logical cores.
Definition: StringConv.hxx:21
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
Definition: TFile.h:48
int Int_t
Definition: RtypesCore.h:41
REveMCRecCrossRef * fpGI
Definition: REveVSD.hxx:53
REveRecKink Reconstructed kink (also used in VSD).
TTree * fTreeV0
Kinks.
Definition: REveVSD.hxx:42
REveHit Monte Carlo hit (also used in VSD).
TTree * fTreeGI
Cascades.
Definition: REveVSD.hxx:44
virtual void WriteTrees()
Does nothing here ... reimplemented in sub-classes.
Definition: REveVSD.cxx:145
#define ClassDef(name, id)
Definition: Rtypes.h:326
virtual void LoadTrees()
Load internal trees from directory.
Definition: REveVSD.cxx:152
TTree * fTreeCC
VO&#39;s.
Definition: REveVSD.hxx:43
virtual void SetDirectory(TDirectory *dir)
Set directory in which the trees are (or will be) created.
Definition: REveVSD.cxx:67
REveMCRecCrossRef fGI
Definition: REveVSD.hxx:53
static void DisableTObjectStreamersForVSDStruct()
Disable TObject streamers for those VSD structs that inherit from TObject directly.
Definition: REveVSD.cxx:192
virtual void SetBranchAddresses()
Set branche addresses of internal trees.
Definition: REveVSD.cxx:125
REveVSD & operator=(const REveVSD &)=delete
virtual void CreateBranches()
Create internal VSD branches.
Definition: REveVSD.cxx:105
REveMCRecCrossRef Cross-reference of sim/rec data per particle (also used in VSD).
TTree * fTreeH
Kinematics.
Definition: REveVSD.hxx:38
REveRecCascade * fpCC
Definition: REveVSD.hxx:52
REveMCTrack fK
Sim-Rec cross references.
Definition: REveVSD.hxx:46
virtual ~REveVSD()
Destructor.
Definition: REveVSD.cxx:60
Describe directory structure in memory.
Definition: TDirectory.h:34
Mother of all ROOT objects.
Definition: TObject.h:37
virtual void CreateTrees()
Create internal trees.
Definition: REveVSD.cxx:75
A TTree represents a columnar dataset.
Definition: TTree.h:72
REveVSD(const REveVSD &)=delete
REveCluster Reconstructed cluster (also used in VSD).
virtual void DeleteTrees()
Delete internal trees.
Definition: REveVSD.cxx:91
char name[80]
Definition: TGX11.cxx:109
TTree * fTreeKK
Reconstructed tracks.
Definition: REveVSD.hxx:41