StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
flow_pDST.h
1 /*
2 Needed by StHbtFlowPicoReader. Describes the "empirical" (see the note below)
3 structure of STAR flow pico DST files. Valid as long as that structure is valid.
4  */
6 // This class has been automatically generated
7 // (Fri Apr 12 14:53:27 2002 by ROOT version3.02/07)
8 // from TTree FlowTree/Flow Pico Tree
9 // found on file: /auto/stardata/starspec2/flow_pDST_production/reco/ProductionMinBias/FullField/P02gc/2001/2269018/st_physics_2269018_raw_0001.flowpicoevent.root
11 
12 
13 #ifndef flow_pDST_h
14 #define flow_pDST_h
15 
16 #include <TROOT.h>
17 #include <TChain.h>
18 #include <TFile.h>
19  const Int_t kMaxfTracks = 7000;
20 
21 class flow_pDST {
22  public :
23  TTree *fChain;
24  Int_t fCurrent;
25 //Declaration of leaves types
26  UInt_t fUniqueID;
27  UInt_t fBits;
28  Int_t mVersion;
29  Int_t mNtrack;
30  Int_t mEventID;
31  Int_t mRunID;
32  Double_t mMagneticField;
33  Double_t mCenterOfMassEnergy;
34  Short_t mBeamMassNumberEast;
35  Short_t mBeamMassNumberWest;
36  UInt_t mOrigMult;
37  UInt_t mL0TriggerWord;
38  UInt_t mUncorrNegMult;
39  UInt_t mUncorrPosMult;
40  UInt_t mMultEta;
41  UInt_t mCentrality;
42  Float_t mVertexX;
43  Float_t mVertexY;
44  Float_t mVertexZ;
45  Float_t mCTB;
46  Float_t mZDCe;
47  Float_t mZDCw;
48  Int_t fTracks_;
49  UInt_t fTracks_fUniqueID[kMaxfTracks]; //[fTracks_]
50  UInt_t fTracks_fBits[kMaxfTracks]; //[fTracks_]
51  Float_t fTracks_mPt[kMaxfTracks]; //[fTracks_]
52  Float_t fTracks_mPtGlobal[kMaxfTracks]; //[fTracks_]
53  Float_t fTracks_mEta[kMaxfTracks]; //[fTracks_]
54  Float_t fTracks_mEtaGlobal[kMaxfTracks]; //[fTracks_]
55  Float_t fTracks_mDedx[kMaxfTracks]; //[fTracks_]
56  Float_t fTracks_mPhi[kMaxfTracks]; //[fTracks_]
57  Float_t fTracks_mPhiGlobal[kMaxfTracks]; //[fTracks_]
58  Short_t fTracks_mCharge[kMaxfTracks]; //[fTracks_]
59  Float_t fTracks_mDca[kMaxfTracks]; //[fTracks_]
60  Float_t fTracks_mDcaSigned[kMaxfTracks]; //[fTracks_]
61  Float_t fTracks_mDcaGlobal[kMaxfTracks]; //[fTracks_]
62  Float_t fTracks_mChi2[kMaxfTracks]; //[fTracks_]
63  Int_t fTracks_mFitPts[kMaxfTracks]; //[fTracks_]
64  Int_t fTracks_mMaxPts[kMaxfTracks]; //[fTracks_]
65  Int_t fTracks_mNhits[kMaxfTracks]; //[fTracks_]
66  Int_t fTracks_mNdedxPts[kMaxfTracks]; //[fTracks_]
67  Float_t fTracks_mTrackLength[kMaxfTracks]; //[fTracks_]
68  Int_t fTracks_mPidPion[kMaxfTracks]; //[fTracks_]
69  Int_t fTracks_mPidProton[kMaxfTracks]; //[fTracks_]
70  Int_t fTracks_mPidKaon[kMaxfTracks]; //[fTracks_]
71  Int_t fTracks_mPidDeuteron[kMaxfTracks]; //[fTracks_]
72  Int_t fTracks_mPidElectron[kMaxfTracks]; //[fTracks_]
73  Int_t fTracks_mMostLikelihoodPID[kMaxfTracks]; //[fTracks_]
74  Float_t fTracks_mMostLikelihoodProb[kMaxfTracks]; //[fTracks_]
75  Int_t fTracks_mExtrapTag[kMaxfTracks]; //[fTracks_]
76  Float_t fTracks_mElectronPositronProb[kMaxfTracks]; //[fTracks_]
77  Float_t fTracks_mPionPlusMinusProb[kMaxfTracks]; //[fTracks_]
78  Float_t fTracks_mKaonPlusMinusProb[kMaxfTracks]; //[fTracks_]
79  Float_t fTracks_mProtonPbarProb[kMaxfTracks]; //[fTracks_]
80  Float_t fTracks_mDcaGlobalX[kMaxfTracks]; //[fTracks_]
81  Float_t fTracks_mDcaGlobalY[kMaxfTracks]; //[fTracks_]
82  Float_t fTracks_mDcaGlobalZ[kMaxfTracks]; //[fTracks_]
83  UInt_t fTracks_mTopologyMap0[kMaxfTracks]; //[fTracks_]
84  UInt_t fTracks_mTopologyMap1[kMaxfTracks]; //[fTracks_]
85 
86 //List of branches
87  TBranch *b_fUniqueID;
88  TBranch *b_fBits;
89  TBranch *b_mVersion;
90  TBranch *b_mNtrack;
91  TBranch *b_mEventID;
92  TBranch *b_mRunID;
93  TBranch *b_mMagneticField;
94  TBranch *b_mCenterOfMassEnergy;
95  TBranch *b_mBeamMassNumberEast;
96  TBranch *b_mBeamMassNumberWest;
97  TBranch *b_mOrigMult;
98  TBranch *b_mL0TriggerWord;
99  TBranch *b_mUncorrNegMult;
100  TBranch *b_mUncorrPosMult;
101  TBranch *b_mMultEta;
102  TBranch *b_mCentrality;
103  TBranch *b_mVertexX;
104  TBranch *b_mVertexY;
105  TBranch *b_mVertexZ;
106  TBranch *b_mCTB;
107  TBranch *b_mZDCe;
108  TBranch *b_mZDCw;
109  TBranch *b_fTracks_;
110  TBranch *b_fTracks_fUniqueID;
111  TBranch *b_fTracks_fBits;
112  TBranch *b_fTracks_mPt;
113  TBranch *b_fTracks_mPtGlobal;
114  TBranch *b_fTracks_mEta;
115  TBranch *b_fTracks_mEtaGlobal;
116  TBranch *b_fTracks_mDedx;
117  TBranch *b_fTracks_mPhi;
118  TBranch *b_fTracks_mPhiGlobal;
119  TBranch *b_fTracks_mCharge;
120  TBranch *b_fTracks_mDca;
121  TBranch *b_fTracks_mDcaSigned;
122  TBranch *b_fTracks_mDcaGlobal;
123  TBranch *b_fTracks_mChi2;
124  TBranch *b_fTracks_mFitPts;
125  TBranch *b_fTracks_mMaxPts;
126  TBranch *b_fTracks_mNhits;
127  TBranch *b_fTracks_mNdedxPts;
128  TBranch *b_fTracks_mTrackLength;
129  TBranch *b_fTracks_mPidPion;
130  TBranch *b_fTracks_mPidProton;
131  TBranch *b_fTracks_mPidKaon;
132  TBranch *b_fTracks_mPidDeuteron;
133  TBranch *b_fTracks_mPidElectron;
134  TBranch *b_fTracks_mMostLikelihoodPID;
135  TBranch *b_fTracks_mMostLikelihoodProb;
136  TBranch *b_fTracks_mExtrapTag;
137  TBranch *b_fTracks_mElectronPositronProb;
138  TBranch *b_fTracks_mPionPlusMinusProb;
139  TBranch *b_fTracks_mKaonPlusMinusProb;
140  TBranch *b_fTracks_mProtonPbarProb;
141  TBranch *b_fTracks_mDcaGlobalX;
142  TBranch *b_fTracks_mDcaGlobalY;
143  TBranch *b_fTracks_mDcaGlobalZ;
144  TBranch *b_fTracks_mTopologyMap0;
145  TBranch *b_fTracks_mTopologyMap1;
146 
147  flow_pDST(TTree *tree=0);
148  ~flow_pDST();
149  Int_t Cut(Int_t entry);
150  Int_t GetEntry(Int_t entry);
151  Int_t LoadTree(Int_t entry);
152  void Init(TTree *tree);
153  void Loop();
154  Bool_t Notify();
155  void Show(Int_t entry = -1);
156 };
157 
158 #endif
159 
160 #ifdef flow_pDST_cxx
161 flow_pDST::flow_pDST(TTree *tree)
162 {
163 // if parameter tree is not specified (or zero), connect the file
164 // used to generate this class and read the Tree.
165  if (tree == 0) {
166  TFile *f = (TFile*)gROOT->GetListOfFiles()->FindObject("/auto/stardata/starspec2/flow_pDST_production/reco/ProductionMinBias/FullField/P02gc/2001/2269018/st_physics_2269018_raw_0001.flowpicoevent.root");
167  if (!f) {
168  f = new TFile("/auto/stardata/starspec2/flow_pDST_production/reco/ProductionMinBias/FullField/P02gc/2001/2269018/st_physics_2269018_raw_0001.flowpicoevent.root");
169  }
170  tree = (TTree*)gDirectory->Get("FlowTree");
171 
172  }
173  Init(tree);
174 }
175 
176 flow_pDST::~flow_pDST()
177 {
178  if (!fChain) return;
179  delete fChain->GetCurrentFile();
180 }
181 
182 Int_t flow_pDST::GetEntry(Int_t entry)
183 {
184 // Read contents of entry.
185  if (!fChain) return 0;
186  return fChain->GetEntry(entry);
187 }
188 Int_t flow_pDST::LoadTree(Int_t entry)
189 {
190 // Set the environment to read one entry
191  if (!fChain) return -5;
192  Int_t centry = fChain->LoadTree(entry);
193  if (centry < 0) return centry;
194  if (fChain->IsA() != TChain::Class()) return centry;
195  TChain *chain = (TChain*)fChain;
196  if (chain->GetTreeNumber() != fCurrent) {
197  fCurrent = chain->GetTreeNumber();
198  Notify();
199  }
200  return centry;
201 }
202 
203 void flow_pDST::Init(TTree *tree)
204 {
205 // Set branch addresses
206  if (tree == 0) return;
207  fChain = tree;
208  fCurrent = -1;
209  fChain->SetMakeClass(1);
210 
211  fChain->SetBranchAddress("fUniqueID",&fUniqueID);
212  fChain->SetBranchAddress("fBits",&fBits);
213  fChain->SetBranchAddress("mVersion",&mVersion);
214  fChain->SetBranchAddress("mNtrack",&mNtrack);
215  fChain->SetBranchAddress("mEventID",&mEventID);
216  fChain->SetBranchAddress("mRunID",&mRunID);
217  fChain->SetBranchAddress("mMagneticField",&mMagneticField);
218  fChain->SetBranchAddress("mCenterOfMassEnergy",&mCenterOfMassEnergy);
219  fChain->SetBranchAddress("mBeamMassNumberEast",&mBeamMassNumberEast);
220  fChain->SetBranchAddress("mBeamMassNumberWest",&mBeamMassNumberWest);
221  fChain->SetBranchAddress("mOrigMult",&mOrigMult);
222  fChain->SetBranchAddress("mL0TriggerWord",&mL0TriggerWord);
223  fChain->SetBranchAddress("mUncorrNegMult",&mUncorrNegMult);
224  fChain->SetBranchAddress("mUncorrPosMult",&mUncorrPosMult);
225  fChain->SetBranchAddress("mMultEta",&mMultEta);
226  fChain->SetBranchAddress("mCentrality",&mCentrality);
227  fChain->SetBranchAddress("mVertexX",&mVertexX);
228  fChain->SetBranchAddress("mVertexY",&mVertexY);
229  fChain->SetBranchAddress("mVertexZ",&mVertexZ);
230  fChain->SetBranchAddress("mCTB",&mCTB);
231  fChain->SetBranchAddress("mZDCe",&mZDCe);
232  fChain->SetBranchAddress("mZDCw",&mZDCw);
233  fChain->SetBranchAddress("fTracks",&fTracks_);
234  fChain->SetBranchAddress("fTracks.fUniqueID",fTracks_fUniqueID);
235  fChain->SetBranchAddress("fTracks.fBits",fTracks_fBits);
236  fChain->SetBranchAddress("fTracks.mPt",fTracks_mPt);
237  fChain->SetBranchAddress("fTracks.mPtGlobal",fTracks_mPtGlobal);
238  fChain->SetBranchAddress("fTracks.mEta",fTracks_mEta);
239  fChain->SetBranchAddress("fTracks.mEtaGlobal",fTracks_mEtaGlobal);
240  fChain->SetBranchAddress("fTracks.mDedx",fTracks_mDedx);
241  fChain->SetBranchAddress("fTracks.mPhi",fTracks_mPhi);
242  fChain->SetBranchAddress("fTracks.mPhiGlobal",fTracks_mPhiGlobal);
243  fChain->SetBranchAddress("fTracks.mCharge",fTracks_mCharge);
244  fChain->SetBranchAddress("fTracks.mDca",fTracks_mDca);
245  fChain->SetBranchAddress("fTracks.mDcaSigned",fTracks_mDcaSigned);
246  fChain->SetBranchAddress("fTracks.mDcaGlobal",fTracks_mDcaGlobal);
247  fChain->SetBranchAddress("fTracks.mChi2",fTracks_mChi2);
248  fChain->SetBranchAddress("fTracks.mFitPts",fTracks_mFitPts);
249  fChain->SetBranchAddress("fTracks.mMaxPts",fTracks_mMaxPts);
250  fChain->SetBranchAddress("fTracks.mNhits",fTracks_mNhits);
251  fChain->SetBranchAddress("fTracks.mNdedxPts",fTracks_mNdedxPts);
252  fChain->SetBranchAddress("fTracks.mTrackLength",fTracks_mTrackLength);
253  fChain->SetBranchAddress("fTracks.mPidPion",fTracks_mPidPion);
254  fChain->SetBranchAddress("fTracks.mPidProton",fTracks_mPidProton);
255  fChain->SetBranchAddress("fTracks.mPidKaon",fTracks_mPidKaon);
256  fChain->SetBranchAddress("fTracks.mPidDeuteron",fTracks_mPidDeuteron);
257  fChain->SetBranchAddress("fTracks.mPidElectron",fTracks_mPidElectron);
258  fChain->SetBranchAddress("fTracks.mMostLikelihoodPID",fTracks_mMostLikelihoodPID);
259  fChain->SetBranchAddress("fTracks.mMostLikelihoodProb",fTracks_mMostLikelihoodProb);
260  fChain->SetBranchAddress("fTracks.mExtrapTag",fTracks_mExtrapTag);
261  fChain->SetBranchAddress("fTracks.mElectronPositronProb",fTracks_mElectronPositronProb);
262  fChain->SetBranchAddress("fTracks.mPionPlusMinusProb",fTracks_mPionPlusMinusProb);
263  fChain->SetBranchAddress("fTracks.mKaonPlusMinusProb",fTracks_mKaonPlusMinusProb);
264  fChain->SetBranchAddress("fTracks.mProtonPbarProb",fTracks_mProtonPbarProb);
265  fChain->SetBranchAddress("fTracks.mDcaGlobalX",fTracks_mDcaGlobalX);
266  fChain->SetBranchAddress("fTracks.mDcaGlobalY",fTracks_mDcaGlobalY);
267  fChain->SetBranchAddress("fTracks.mDcaGlobalZ",fTracks_mDcaGlobalZ);
268  fChain->SetBranchAddress("fTracks.mTopologyMap0",fTracks_mTopologyMap0);
269  fChain->SetBranchAddress("fTracks.mTopologyMap1",fTracks_mTopologyMap1);
270  Notify();
271 }
272 
273 Bool_t flow_pDST::Notify()
274 {
275  // Called when loading a new file.
276  // Get branch pointers.
277  b_fUniqueID = fChain->GetBranch("fUniqueID");
278  b_fBits = fChain->GetBranch("fBits");
279  b_mVersion = fChain->GetBranch("mVersion");
280  b_mNtrack = fChain->GetBranch("mNtrack");
281  b_mEventID = fChain->GetBranch("mEventID");
282  b_mRunID = fChain->GetBranch("mRunID");
283  b_mMagneticField = fChain->GetBranch("mMagneticField");
284  b_mCenterOfMassEnergy = fChain->GetBranch("mCenterOfMassEnergy");
285  b_mBeamMassNumberEast = fChain->GetBranch("mBeamMassNumberEast");
286  b_mBeamMassNumberWest = fChain->GetBranch("mBeamMassNumberWest");
287  b_mOrigMult = fChain->GetBranch("mOrigMult");
288  b_mL0TriggerWord = fChain->GetBranch("mL0TriggerWord");
289  b_mUncorrNegMult = fChain->GetBranch("mUncorrNegMult");
290  b_mUncorrPosMult = fChain->GetBranch("mUncorrPosMult");
291  b_mMultEta = fChain->GetBranch("mMultEta");
292  b_mCentrality = fChain->GetBranch("mCentrality");
293  b_mVertexX = fChain->GetBranch("mVertexX");
294  b_mVertexY = fChain->GetBranch("mVertexY");
295  b_mVertexZ = fChain->GetBranch("mVertexZ");
296  b_mCTB = fChain->GetBranch("mCTB");
297  b_mZDCe = fChain->GetBranch("mZDCe");
298  b_mZDCw = fChain->GetBranch("mZDCw");
299  b_fTracks_ = fChain->GetBranch("fTracks");
300  b_fTracks_fUniqueID = fChain->GetBranch("fTracks.fUniqueID");
301  b_fTracks_fBits = fChain->GetBranch("fTracks.fBits");
302  b_fTracks_mPt = fChain->GetBranch("fTracks.mPt");
303  b_fTracks_mPtGlobal = fChain->GetBranch("fTracks.mPtGlobal");
304  b_fTracks_mEta = fChain->GetBranch("fTracks.mEta");
305  b_fTracks_mEtaGlobal = fChain->GetBranch("fTracks.mEtaGlobal");
306  b_fTracks_mDedx = fChain->GetBranch("fTracks.mDedx");
307  b_fTracks_mPhi = fChain->GetBranch("fTracks.mPhi");
308  b_fTracks_mPhiGlobal = fChain->GetBranch("fTracks.mPhiGlobal");
309  b_fTracks_mCharge = fChain->GetBranch("fTracks.mCharge");
310  b_fTracks_mDca = fChain->GetBranch("fTracks.mDca");
311  b_fTracks_mDcaSigned = fChain->GetBranch("fTracks.mDcaSigned");
312  b_fTracks_mDcaGlobal = fChain->GetBranch("fTracks.mDcaGlobal");
313  b_fTracks_mChi2 = fChain->GetBranch("fTracks.mChi2");
314  b_fTracks_mFitPts = fChain->GetBranch("fTracks.mFitPts");
315  b_fTracks_mMaxPts = fChain->GetBranch("fTracks.mMaxPts");
316  b_fTracks_mNhits = fChain->GetBranch("fTracks.mNhits");
317  b_fTracks_mNdedxPts = fChain->GetBranch("fTracks.mNdedxPts");
318  b_fTracks_mTrackLength = fChain->GetBranch("fTracks.mTrackLength");
319  b_fTracks_mPidPion = fChain->GetBranch("fTracks.mPidPion");
320  b_fTracks_mPidProton = fChain->GetBranch("fTracks.mPidProton");
321  b_fTracks_mPidKaon = fChain->GetBranch("fTracks.mPidKaon");
322  b_fTracks_mPidDeuteron = fChain->GetBranch("fTracks.mPidDeuteron");
323  b_fTracks_mPidElectron = fChain->GetBranch("fTracks.mPidElectron");
324  b_fTracks_mMostLikelihoodPID = fChain->GetBranch("fTracks.mMostLikelihoodPID");
325  b_fTracks_mMostLikelihoodProb = fChain->GetBranch("fTracks.mMostLikelihoodProb");
326  b_fTracks_mExtrapTag = fChain->GetBranch("fTracks.mExtrapTag");
327  b_fTracks_mElectronPositronProb = fChain->GetBranch("fTracks.mElectronPositronProb");
328  b_fTracks_mPionPlusMinusProb = fChain->GetBranch("fTracks.mPionPlusMinusProb");
329  b_fTracks_mKaonPlusMinusProb = fChain->GetBranch("fTracks.mKaonPlusMinusProb");
330  b_fTracks_mProtonPbarProb = fChain->GetBranch("fTracks.mProtonPbarProb");
331  b_fTracks_mDcaGlobalX = fChain->GetBranch("fTracks.mDcaGlobalX");
332  b_fTracks_mDcaGlobalY = fChain->GetBranch("fTracks.mDcaGlobalY");
333  b_fTracks_mDcaGlobalZ = fChain->GetBranch("fTracks.mDcaGlobalZ");
334  b_fTracks_mTopologyMap0 = fChain->GetBranch("fTracks.mTopologyMap0");
335  b_fTracks_mTopologyMap1 = fChain->GetBranch("fTracks.mTopologyMap1");
336  return kTRUE;
337 }
338 
339 void flow_pDST::Show(Int_t entry)
340 {
341 // Print contents of entry.
342 // If entry is not specified, print current entry
343  if (!fChain) return;
344  fChain->Show(entry);
345 }
346 Int_t flow_pDST::Cut(Int_t entry)
347 {
348 // This function may be called from Loop.
349 // returns 1 if entry is accepted.
350 // returns -1 otherwise.
351  return 1;
352 }
353 #endif // #ifdef flow_pDST_cxx
354 
Definition: Cut.h:18
Int_t fCurrent
pointer to the analyzed TTree or TChain
Definition: flow_pDST.h:24
UInt_t fUniqueID
current Tree number in a TChain
Definition: flow_pDST.h:26