ATLAS Offline Software
CaloHadDMCoeffData.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //-----------------------------------------------------------------------
6 // File and Version Information:
7 // $Id: CaloHadDMCoeffData.cxx,v 1.2 2009-05-18 20:31:52 pospelov Exp $
8 //
9 // Description: see CaloHadDMCoeffData.h
10 //
11 // Environment:
12 // Software developed for the ATLAS Detector at CERN LHC
13 //
14 // Author List:
15 // Gennady Pospelov
16 //
17 //-----------------------------------------------------------------------
18 #include <cmath>
19 #include <fstream>
20 #include <iostream>
21 #include <sstream>
22 
25 
26 
28  fChain(nullptr),
29  fCurrent(0),
30  m_ncls(0),
31  m_mc_pdg(0),
32  m_mc_ener(0),
33  m_mc_eta(0),
34  m_mc_phi(0),
35  m_cls_ener(nullptr),
36  m_cls_ener_unw(nullptr),
37  m_cls_lambda(nullptr),
38  m_cls_eta(nullptr),
39  m_cls_phi(nullptr),
40  m_cls_smpener(nullptr),
41  m_cls_smpener_unw(nullptr),
42  m_narea(0),
43  m_cls_eprep(nullptr),
44  m_cls_dmener(nullptr),
45  m_engClusSumCalib(0),
46  m_cls_engcalib(nullptr),
47  m_cls_recostat(nullptr),
48  m_cls_pi0prob(nullptr),
49  m_cls_isol(nullptr),
50  m_cls_oocener(nullptr),
51  m_cls_calib_emfrac(nullptr),
52  m_cls_engcalibpres(nullptr),
53  b_ncls(nullptr),
54  b_mc_pdg(nullptr),
55  b_mc_ener(nullptr),
56  b_mc_eta(nullptr),
57  b_mc_phi(nullptr),
58  b_cls_ener(nullptr),
59  b_cls_ener_unw(nullptr),
60  b_cls_lambda(nullptr),
61  b_cls_eta(nullptr),
62  b_cls_phi(nullptr),
63  b_cls_smpener_unw(nullptr),
64  b_m_narea(nullptr),
65  b_cls_eprep(nullptr),
66  b_cls_dmener(nullptr),
67  b_engClusSumCalib(nullptr),
68  b_cls_engcalib(nullptr),
69  b_cls_recostat(nullptr),
70  b_cls_pi0prob(nullptr),
71  b_cls_isol(nullptr),
72  b_cls_oocener(nullptr),
73  b_cls_calib_emfrac(nullptr),
74  b_cls_engcalibpres(nullptr),
75  m_MaxEventsPerFile(0),
76  m_classify_type(kCLASSIFY_USE_PDG)
77 {
78  if (tree == nullptr) {
79  //std::cout << "CaloHadDMCoeffData::CaloHadDMCoeffData() -> Error. No pointer to the tree!" << std::endl;
80  return;
81  }
83 }
84 
85 
87 {
88 // if (!fChain) return;
89 // delete fChain->GetCurrentFile();
90 }
91 
92 
93 // Int_t CaloHadDMCoeffData::GetEntry(Long64_t entry)
94 // {
95 // // Read contents of entry.
96 // if (!fChain) return 0;
97 // return fChain->GetEntry(entry);
98 // }
99 
100 
102 {
103  static int offset = 0;
104  // Read contents of entry.
105  if (!fChain) return 0;
106  if(!m_MaxEventsPerFile) {
107  return fChain->GetEntry(entry);
108  }else{
109  // read only m_MaxEventsPerFile
110  if(entry==0) offset = 0;
111  Int_t nbytes = fChain->GetEntry(offset++);
112  TTree *loc = ((TChain *)fChain)->GetTree();
113  //std::cout << "entry:" << entry << " offset:" << offset << " loc->GetReadEntry():" << loc->GetReadEntry() << std::endl;
114  if( loc->GetReadEntry() >= m_MaxEventsPerFile) {
115  offset = ((TChain *)fChain)->GetTreeOffset()[ fChain->GetTreeNumber()] + loc->GetEntries();
116  //std::cout << "changing offset "<< ((TChain *)fChain)->GetTreeOffset()[ fChain->GetTreeNumber()] << " " << loc->GetEntries() << " " << offset << std::endl;
117  nbytes = fChain->GetEntry(offset++);
118  }
119  return nbytes;
120  }
121 }
122 
123 
125 {
126 // Read contents of entry.
127  if (!fChain) return 0;
128  return fChain->GetEntries();
129 }
130 
131 
133 {
134  // The Init() function is called when the selector needs to initialize
135  // a new tree or chain. Typically here the branch addresses and branch
136  // pointers of the tree will be set.
137  // It is normally not necessary to make changes to the generated
138  // code, but the routine can be extended by the user if needed.
139  // Init() will be called many times when running on PROOF
140  // (once per file to be processed).
141 
142  m_ncls = 0;
143  m_mc_pdg = 0;
144  m_mc_ener = 0.0;
145  m_mc_eta = 0.0;
146  m_mc_phi = 0.0;
147  m_narea = 0;
148  m_engClusSumCalib = 0.0;
149 
150  // Set object pointer
151  m_cls_ener = nullptr;
152  m_cls_ener_unw = nullptr;
153  m_cls_lambda = nullptr;
154  m_cls_eta = nullptr;
155  m_cls_phi = nullptr;
156  //m_cls_emfrac = 0;
157  //m_cls_smpener = 0;
158  m_cls_smpener_unw = nullptr;
159  //m_cls_ibin = 0;
160  m_cls_eprep = nullptr;
161  m_cls_dmener = nullptr;
162  m_cls_engcalib = nullptr;
163  m_cls_recostat = nullptr;
164  m_cls_pi0prob = nullptr;
165  m_cls_isol = nullptr;
166  m_cls_oocener = nullptr;
167  m_cls_calib_emfrac = nullptr;
168  m_cls_engcalibpres = nullptr;
169  // Set branch addresses and branch pointers
170  if (!tree) return;
171  fChain = tree;
172  fCurrent = -1;
173  fChain->SetMakeClass(1);
174 
175  fChain->SetBranchAddress("ncls", &m_ncls, &b_ncls);
176  fChain->SetBranchAddress("mc_pdg", &m_mc_pdg, &b_mc_pdg);
177  fChain->SetBranchAddress("mc_ener", &m_mc_ener, &b_mc_ener);
178  fChain->SetBranchAddress("mc_eta", &m_mc_eta, &b_mc_eta);
179  fChain->SetBranchAddress("mc_phi", &m_mc_phi, &b_mc_phi);
180  fChain->SetBranchAddress("cls_ener", &m_cls_ener, &b_cls_ener);
181  fChain->SetBranchAddress("cls_ener_unw", &m_cls_ener_unw, &b_cls_ener_unw);
182  fChain->SetBranchAddress("cls_lambda", &m_cls_lambda, &b_cls_lambda);
183  fChain->SetBranchAddress("cls_eta", &m_cls_eta, &b_cls_eta);
184  fChain->SetBranchAddress("cls_phi", &m_cls_phi, &b_cls_phi);
185  //fChain->SetBranchAddress("cls_emfrac", &m_cls_emfrac, &b_cls_emfrac);
186  //fChain->SetBranchAddress("cls_smpener", &m_cls_smpener, &b_cls_smpener);
187  fChain->SetBranchAddress("cls_smpener_unw", &m_cls_smpener_unw, &b_cls_smpener_unw);
188  //fChain->SetBranchAddress("cls_ibin", &m_cls_ibin, &b_cls_ibin);
189  fChain->SetBranchAddress("narea", &m_narea, &b_m_narea);
190  fChain->SetBranchAddress("cls_eprep", &m_cls_eprep, &b_cls_eprep);
191  fChain->SetBranchAddress("cls_dmener", &m_cls_dmener, &b_cls_dmener);
192  fChain->SetBranchAddress("cls_engcalib", &m_cls_engcalib, &b_cls_engcalib);
193  fChain->SetBranchAddress("cls_recostat", &m_cls_recostat, &b_cls_recostat);
194  fChain->SetBranchAddress("cls_pi0prob", &m_cls_pi0prob, &b_cls_pi0prob);
195  fChain->SetBranchAddress("cls_isol", &m_cls_isol, &b_cls_isol);
196  fChain->SetBranchAddress("cls_oocener", &m_cls_oocener, &b_cls_oocener);
197  fChain->SetBranchAddress("engClusSumCalib", &m_engClusSumCalib, &b_engClusSumCalib);
198  fChain->SetBranchAddress("cls_calib_emfrac", &m_cls_calib_emfrac, &b_cls_calib_emfrac);
199  fChain->SetBranchAddress("cls_engcalibpres", &m_cls_engcalibpres, &b_cls_engcalibpres);
200 }
201 
202 
203 
204 /* ****************************************************************************
205 create tree which points to the variables of given class
206 **************************************************************************** */
207 TTree *CaloHadDMCoeffData::MakeTree(const char *treename)
208 {
209  TTree *tree = new TTree(treename, treename);
210 
211  tree->Branch("ncls",&m_ncls,"ncls/I");
212  tree->Branch("mc_pdg",&m_mc_pdg,"mc_pdg/I");
213  tree->Branch("mc_ener",&m_mc_ener,"mc_ener/D");
214  tree->Branch("mc_eta",&m_mc_eta,"mc_eta/D");
215  tree->Branch("mc_phi",&m_mc_phi,"mc_phi/D");
216  m_cls_ener = new std::vector<double >;
217  tree->Branch("cls_ener","vector<double >",&m_cls_ener);
218  m_cls_ener_unw = new std::vector<double >;
219  tree->Branch("cls_ener_unw","vector<double >",&m_cls_ener_unw);
220 
221  m_cls_lambda = new std::vector<double >;
222  tree->Branch("cls_lambda","vector<double >",&m_cls_lambda);
223  m_cls_eta = new std::vector<double >;
224  tree->Branch("cls_eta","vector<double >",&m_cls_eta);
225  m_cls_phi = new std::vector<double >;
226  tree->Branch("cls_phi","vector<double >",&m_cls_phi);
227 // m_cls_emfrac = new std::vector<double >;
228 // tree->Branch("cls_emfrac","vector<double >",&m_cls_emfrac);
229 
230  m_cls_smpener = new std::vector<std::vector<double > >;
231 // tree->Branch("cls_smpener","vector<vector<double > >",&m_cls_smpener);
232  m_cls_smpener_unw = new std::vector<std::vector<double > >;
233  tree->Branch("cls_smpener_unw","vector<vector<double > >",&m_cls_smpener_unw);
234  //m_cls_ibin = new std::vector<std::vector<int > >;
235  //tree->Branch("cls_ibin","vector<vector<int > >",&m_cls_ibin);
236  tree->Branch("narea",&m_narea,"narea/I");
237  m_cls_eprep = new std::vector<std::vector<double > >;
238  tree->Branch("cls_eprep","vector<vector<double > >",&m_cls_eprep);
239  m_cls_dmener = new std::vector<std::vector<double > >;
240  tree->Branch("cls_dmener","vector<vector<double > >",&m_cls_dmener);
241  tree->Branch("engClusSumCalib",&m_engClusSumCalib,"engClusSumCalib/D");
242  m_cls_engcalib = new std::vector<double >;
243  tree->Branch("cls_engcalib","vector<double >",&m_cls_engcalib);
244  m_cls_recostat = new std::vector<int >;
245  tree->Branch("cls_recostat","vector<int >",&m_cls_recostat);
246  m_cls_pi0prob = new std::vector<double >;
247  tree->Branch("cls_pi0prob","vector<double >",&m_cls_pi0prob);
248  m_cls_isol = new std::vector<double >;
249  tree->Branch("cls_isol","vector<double >",&m_cls_isol);
250  m_cls_oocener = new std::vector<double >;
251  tree->Branch("cls_oocener","vector<double >",&m_cls_oocener);
252  m_cls_calib_emfrac = new std::vector<double >;
253  tree->Branch("cls_calib_emfrac","vector<double >",&m_cls_calib_emfrac);
254  m_cls_engcalibpres = new std::vector<double >;
255  tree->Branch("cls_engcalibpres","vector<double >",&m_cls_engcalibpres);
256 
257  return tree;
258 }
259 
260 
261 /* ****************************************************************************
262 create tree which points to the variables of given class
263 **************************************************************************** */
265 {
266  m_ncls = 0;
267  m_mc_pdg = 0;
268  m_mc_ener = 0.0;
269  m_mc_eta = 0.0;
270  m_mc_phi = 0.0;
271  m_cls_ener->clear();
272  m_cls_smpener->clear();
273  m_cls_ener_unw->clear();
274  m_cls_lambda->clear();
275  m_cls_eta->clear();
276  m_cls_phi->clear();
277  //m_cls_emfrac->clear();
278  m_cls_smpener_unw->clear();
279  m_narea = 0;
280  //m_cls_ibin->clear();
281  m_cls_eprep->clear();
282  m_cls_dmener->clear();
283  m_engClusSumCalib = 0.0;
284  m_cls_engcalib->clear();
285  m_cls_recostat->clear();
286  m_cls_pi0prob->clear();
287  m_cls_isol->clear();
288  m_cls_oocener->clear();
289  m_cls_calib_emfrac->clear();
290  m_cls_engcalibpres->clear();
291 }
292 
293 
294 
295 /* ****************************************************************************
296 pack cluster variables into vector of float for later calculation of global bin number
297 **************************************************************************** */
298 int CaloHadDMCoeffData::PackClusterVars(int i_cls, std::vector<float> &vars)
299 {
300 
301  float clusEmFrac = -1.0;
303  clusEmFrac = (*m_cls_calib_emfrac)[i_cls];
304  }else{
305  // if sample contains only pi+- or pi0
306  if( m_mc_pdg == 111) {
307  clusEmFrac = 0.99; // pi0
308  }else if( abs(m_mc_pdg) == 211) {
309  clusEmFrac = 0.25; // pi+, pi-
310  }else{
311  std::cout << "CaloHadDMCoeffData::PackClusterVars() -> Warning! Wrong particle " << m_mc_pdg << std::endl;
312  }
313  }
314  float clusSide = ( (*m_cls_eta)[i_cls]<0?-1.0:1.0);
315  float clusEta = (*m_cls_eta)[i_cls];
316  float clusPhi = (*m_cls_phi)[i_cls];
317  float clusEner = (*m_cls_ener_unw)[i_cls];
318  if(clusEner > 0.0) {
319  clusEner = log10( clusEner );
320  } else {
321  clusEner = 0.0;
322  }
323  float clusLambda = (*m_cls_lambda)[i_cls];
324  if(clusLambda > 0.0) {
325  clusLambda = log10(clusLambda);
326  } else{
327  clusLambda = 0.0;
328  }
329  if(clusLambda > 4.0) clusLambda = 3.9999;
330  vars.resize(CaloLocalHadCoeffHelper::DIM_UNKNOWN, 0.0);
331  vars[CaloLocalHadCoeffHelper::DIM_EMFRAC] = clusEmFrac;
332  vars[CaloLocalHadCoeffHelper::DIM_SIDE] = clusSide;
333  vars[CaloLocalHadCoeffHelper::DIM_ETA] = fabs(clusEta);
334  vars[CaloLocalHadCoeffHelper::DIM_PHI] = clusPhi;
335  vars[CaloLocalHadCoeffHelper::DIM_ENER] = clusEner;
336  vars[CaloLocalHadCoeffHelper::DIM_LAMBDA] = clusLambda;
337  return 0;
338 }
339 
340 
CaloHadDMCoeffData::m_mc_ener
Double_t m_mc_ener
Definition: CaloHadDMCoeffData.h:39
CaloHadDMCoeffData::b_cls_smpener_unw
TBranch * b_cls_smpener_unw
Definition: CaloHadDMCoeffData.h:72
CaloLocalHadCoeffHelper::DIM_SIDE
@ DIM_SIDE
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::m_cls_dmener
std::vector< std::vector< double > > * m_cls_dmener
Definition: CaloHadDMCoeffData.h:51
CaloHadDMCoeffData::~CaloHadDMCoeffData
virtual ~CaloHadDMCoeffData()
Definition: CaloHadDMCoeffData.cxx:86
CaloHadDMCoeffData::m_cls_lambda
std::vector< double > * m_cls_lambda
Definition: CaloHadDMCoeffData.h:44
CaloHadDMCoeffData::MakeTree
TTree * MakeTree(const char *treename)
Definition: CaloHadDMCoeffData.cxx:207
CaloHadDMCoeffData::b_m_narea
TBranch * b_m_narea
Definition: CaloHadDMCoeffData.h:73
CaloLocalHadCoeffHelper::DIM_EMFRAC
@ DIM_EMFRAC
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::b_cls_engcalibpres
TBranch * b_cls_engcalibpres
Definition: CaloHadDMCoeffData.h:83
tree
TChain * tree
Definition: tile_monitor.h:30
CaloHadDMCoeffData::b_cls_ener
TBranch * b_cls_ener
Definition: CaloHadDMCoeffData.h:67
CaloLocalHadCoeffHelper::DIM_ENER
@ DIM_ENER
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::m_mc_pdg
Int_t m_mc_pdg
Definition: CaloHadDMCoeffData.h:38
CaloHadDMCoeffData::b_cls_calib_emfrac
TBranch * b_cls_calib_emfrac
Definition: CaloHadDMCoeffData.h:82
CaloHadDMCoeffData::kCLASSIFY_USE_PARTICLEID
@ kCLASSIFY_USE_PARTICLEID
Definition: CaloHadDMCoeffData.h:87
CaloHadDMCoeffData::m_narea
Int_t m_narea
Definition: CaloHadDMCoeffData.h:49
CaloHadDMCoeffData::m_classify_type
int m_classify_type
Definition: CaloHadDMCoeffData.h:86
CaloHadDMCoeffData::m_cls_phi
std::vector< double > * m_cls_phi
Definition: CaloHadDMCoeffData.h:46
CaloHadDMCoeffData::m_cls_eta
std::vector< double > * m_cls_eta
Definition: CaloHadDMCoeffData.h:45
CaloHadDMCoeffData::b_cls_pi0prob
TBranch * b_cls_pi0prob
Definition: CaloHadDMCoeffData.h:79
CaloHadDMCoeffData::m_cls_ener
std::vector< double > * m_cls_ener
Definition: CaloHadDMCoeffData.h:42
CaloHadDMCoeffData::b_cls_eta
TBranch * b_cls_eta
Definition: CaloHadDMCoeffData.h:70
CaloHadDMCoeffData::b_cls_eprep
TBranch * b_cls_eprep
Definition: CaloHadDMCoeffData.h:74
CaloHadDMCoeffData::b_cls_oocener
TBranch * b_cls_oocener
Definition: CaloHadDMCoeffData.h:81
CaloHadDMCoeffData::m_mc_eta
Double_t m_mc_eta
Definition: CaloHadDMCoeffData.h:40
CaloHadDMCoeffData::m_cls_isol
std::vector< double > * m_cls_isol
Definition: CaloHadDMCoeffData.h:56
CaloHadDMCoeffData::b_cls_engcalib
TBranch * b_cls_engcalib
Definition: CaloHadDMCoeffData.h:77
CaloHadDMCoeffData::b_mc_eta
TBranch * b_mc_eta
Definition: CaloHadDMCoeffData.h:65
CaloHadDMCoeffData::b_cls_recostat
TBranch * b_cls_recostat
Definition: CaloHadDMCoeffData.h:78
CaloHadDMCoeffData::b_mc_ener
TBranch * b_mc_ener
Definition: CaloHadDMCoeffData.h:64
CaloLocalHadCoeffHelper::DIM_LAMBDA
@ DIM_LAMBDA
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::m_cls_smpener
std::vector< std::vector< double > > * m_cls_smpener
Definition: CaloHadDMCoeffData.h:47
CaloHadDMCoeffData::b_cls_lambda
TBranch * b_cls_lambda
Definition: CaloHadDMCoeffData.h:69
CaloHadDMCoeffData::m_mc_phi
Double_t m_mc_phi
Definition: CaloHadDMCoeffData.h:41
CaloHadDMCoeffData::m_cls_ener_unw
std::vector< double > * m_cls_ener_unw
Definition: CaloHadDMCoeffData.h:43
CaloHadDMCoeffData::m_cls_recostat
std::vector< int > * m_cls_recostat
Definition: CaloHadDMCoeffData.h:54
CaloLocalHadCoeffHelper.h
CaloHadDMCoeffData::m_cls_smpener_unw
std::vector< std::vector< double > > * m_cls_smpener_unw
Definition: CaloHadDMCoeffData.h:48
CaloLocalHadCoeffHelper::DIM_PHI
@ DIM_PHI
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::GetEntries
virtual Int_t GetEntries()
Definition: CaloHadDMCoeffData.cxx:124
CaloHadDMCoeffData::m_cls_engcalibpres
std::vector< double > * m_cls_engcalibpres
Definition: CaloHadDMCoeffData.h:59
CaloLocalHadCoeffHelper::DIM_UNKNOWN
@ DIM_UNKNOWN
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::b_cls_dmener
TBranch * b_cls_dmener
Definition: CaloHadDMCoeffData.h:75
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
CaloLocalHadCoeffHelper::DIM_ETA
@ DIM_ETA
Definition: CaloLocalHadCoeffHelper.h:17
CaloHadDMCoeffData::m_cls_calib_emfrac
std::vector< double > * m_cls_calib_emfrac
Definition: CaloHadDMCoeffData.h:58
CaloHadDMCoeffData::m_cls_engcalib
std::vector< double > * m_cls_engcalib
Definition: CaloHadDMCoeffData.h:53
CaloHadDMCoeffData::m_MaxEventsPerFile
int m_MaxEventsPerFile
Definition: CaloHadDMCoeffData.h:85
CaloHadDMCoeffData::b_ncls
TBranch * b_ncls
Definition: CaloHadDMCoeffData.h:62
CaloHadDMCoeffData::PackClusterVars
int PackClusterVars(int iClus, std::vector< float > &vars)
Definition: CaloHadDMCoeffData.cxx:298
CaloHadDMCoeffData::b_engClusSumCalib
TBranch * b_engClusSumCalib
Definition: CaloHadDMCoeffData.h:76
CaloHadDMCoeffData::b_cls_isol
TBranch * b_cls_isol
Definition: CaloHadDMCoeffData.h:80
CaloHadDMCoeffData::b_mc_pdg
TBranch * b_mc_pdg
Definition: CaloHadDMCoeffData.h:63
CaloHadDMCoeffData::b_cls_ener_unw
TBranch * b_cls_ener_unw
Definition: CaloHadDMCoeffData.h:68
CaloHadDMCoeffData::CaloHadDMCoeffData
CaloHadDMCoeffData(TTree *tree)
Definition: CaloHadDMCoeffData.cxx:27
CaloHadDMCoeffData::m_cls_eprep
std::vector< std::vector< double > > * m_cls_eprep
Definition: CaloHadDMCoeffData.h:50
convertTimingResiduals.offset
offset
Definition: convertTimingResiduals.py:71
CaloHadDMCoeffData::m_cls_oocener
std::vector< double > * m_cls_oocener
Definition: CaloHadDMCoeffData.h:57
CaloHadDMCoeffData::b_cls_phi
TBranch * b_cls_phi
Definition: CaloHadDMCoeffData.h:71
CaloHadDMCoeffData::m_cls_pi0prob
std::vector< double > * m_cls_pi0prob
Definition: CaloHadDMCoeffData.h:55
CaloHadDMCoeffData::clear
void clear()
Definition: CaloHadDMCoeffData.cxx:264
CaloHadDMCoeffData::m_engClusSumCalib
Double_t m_engClusSumCalib
Definition: CaloHadDMCoeffData.h:52
CaloHadDMCoeffData.h
CaloHadDMCoeffData::GetEntry
virtual Int_t GetEntry(Long64_t entry)
Definition: CaloHadDMCoeffData.cxx:101
CaloHadDMCoeffData::fChain
TTree * fChain
Definition: CaloHadDMCoeffData.h:33
CaloHadDMCoeffData::b_mc_phi
TBranch * b_mc_phi
Definition: CaloHadDMCoeffData.h:66
CaloHadDMCoeffData::fCurrent
Int_t fCurrent
pointer to the analyzed TTree or TChain
Definition: CaloHadDMCoeffData.h:34
CaloHadDMCoeffData::m_ncls
Int_t m_ncls
current Tree number in a TChain
Definition: CaloHadDMCoeffData.h:37
CaloHadDMCoeffData::Init
virtual void Init(TTree *tree)
Definition: CaloHadDMCoeffData.cxx:132