]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/PartCorrDep/AliAnaCalorimeterQA.h
fixing compilation problem
[u/mrichter/AliRoot.git] / PWG4 / PartCorrDep / AliAnaCalorimeterQA.h
1 #ifndef ALIANACALORIMETERQA_H
2 #define ALIANACALORIMETERQA_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5 /* $Id: $ */
6
7 //_________________________________________________________________________
8 // Class to check results from simulations or reconstructed real data. 
9 // Fill few histograms and do some checking plots
10 //
11 //-- Author: Gustavo Conesa (INFN-LNF)
12
13 // --- Root system ---
14 class TH2F;
15 class TH1F;
16 //class TH3F;
17
18 // --- Analysis system --- 
19 #include "AliAnaPartCorrBaseClass.h"
20  
21 class AliAnaCalorimeterQA : public AliAnaPartCorrBaseClass {
22   
23  public: 
24   
25   AliAnaCalorimeterQA() ; // default ctor
26   AliAnaCalorimeterQA(const AliAnaCalorimeterQA & g) ; // cpy ctor
27   AliAnaCalorimeterQA & operator = (const AliAnaCalorimeterQA & g) ;//cpy assignment
28   virtual ~AliAnaCalorimeterQA() {;} //virtual dtor
29   
30   TList * GetCreateOutputObjects();
31   
32   void Init();
33   void InitParameters();
34   
35   void Print(const Option_t * opt) const;
36     
37   void MakeAnalysisFillHistograms() ; 
38         
39   TString GetCalorimeter() const {return fCalorimeter ;}
40   void SetCalorimeter( TString calo ) {fCalorimeter = calo; }
41   TString GetStyleMacro() const {return fStyleMacro ;}
42   void SetStyleMacro( TString macro ) {fStyleMacro = macro; }
43   
44   void Terminate(TList * outputList);
45   void ReadHistograms(TList * outputList); //Fill histograms with histograms in ouput list, needed in Terminate.
46
47  private:
48   
49   TString fCalorimeter ; //Calorimeter selection
50   TString fStyleMacro  ; //Location of macro for plots style
51   
52   //Histograms
53   //CaloClusters 
54   TH1F * fhE  ; //! E distribution, Reco
55   TH1F * fhPt ; //! pT distribution, Reco
56   TH1F * fhPhi; //! phi distribution, Reco 
57   TH1F * fhEta; //! eta distribution, Reco 
58   TH2F * fhEtaPhi  ; //! eta vs phi, Reco 
59   TH1F * fhECharged  ; //! E distribution, Reco, matched with track
60   TH1F * fhPtCharged ; //! pT distribution, Reco, matched with track
61   TH1F * fhPhiCharged; //! phi distribution, Reco, matched with track 
62   TH1F * fhEtaCharged; //! eta distribution, Reco, matched with track 
63   TH2F * fhEtaPhiCharged  ; //! eta vs phi, Reco, matched with track 
64   TH1F * fhEChargedNoOut  ; //! E distribution, Reco, matched with track, no outer param
65   TH1F * fhPtChargedNoOut ; //! pT distribution, Reco, matched with track, no outer param
66   TH1F * fhPhiChargedNoOut; //! phi distribution, Reco, matched with track, no outer param
67   TH1F * fhEtaChargedNoOut; //! eta distribution, Reco, matched with track, no outer param
68   TH2F * fhEtaPhiChargedNoOut  ; //! eta vs phi, Reco, matched with track, no outer param
69   TH1F * fhDeltaE  ; //! MC-Reco E distribution 
70   TH1F * fhDeltaPt ; //! MC-Reco pT distribution
71   TH1F * fhDeltaPhi; //! MC-Reco phi distribution
72   TH1F * fhDeltaEta; //! MC-Reco eta distribution
73   TH1F * fhRatioE  ; //! Reco/MC E distribution 
74   TH1F * fhRatioPt ; //! Reco/MC pT distribution
75   TH1F * fhRatioPhi; //! Reco/MC phi distribution
76   TH1F * fhRatioEta; //! Reco/MC eta distribution
77   TH2F * fh2E  ; //! E distribution, Reco vs MC
78   TH2F * fh2Pt ; //! pT distribution, Reco vs MC
79   TH2F * fh2Phi; //! phi distribution, Reco vs MC
80   TH2F * fh2Eta; //! eta distribution, Reco vs MC
81   TH2F * fhIM; //! cluster pairs invariant mass
82   TH2F * fhAsym; //! cluster pairs invariant mass       
83   TH2F * fhNCellsPerCluster; //! N cells per cluster    
84   TH1F * fhNClusters; //! Number of clusters
85         
86   //Calo Cells
87   TH1F * fhNCells; //! Number of towers/crystals with signal
88   TH1F * fhAmplitude; //! Amplitude measured in towers/crystals
89
90   //MC  
91   TH1F *fhGenGamPt  ; // pt of primary gamma
92   TH1F *fhGenGamEta ; // eta of primart gamma
93   TH1F *fhGenGamPhi ; // phi of primary gamma   
94   TH1F *fhGenPi0Pt  ; // pt of primary pi0
95   TH1F *fhGenPi0Eta ; // eta of primart pi0
96   TH1F *fhGenPi0Phi ; // phi of primary pi0     
97   TH1F *fhGenEtaPt  ; // pt of primary eta
98   TH1F *fhGenEtaEta ; // eta of primart eta
99   TH1F *fhGenEtaPhi ; // phi of primary eta
100   TH1F *fhGenOmegaPt  ; // pt of primary omega
101   TH1F *fhGenOmegaEta ; // eta of primart omega
102   TH1F *fhGenOmegaPhi ; // phi of primary omega
103   TH1F *fhGenElePt  ; // pt of primary electron
104   TH1F *fhGenEleEta ; // eta of primart electron
105   TH1F *fhGenElePhi ; // phi of primary electron
106         
107   //TH3F * fhEMVxyz    ; // Electromagnetic particle production vertex
108   TH2F * fhEMVxyz    ; // Electromagnetic particle production vertex
109   TH2F * fhEMR       ; // Electromagnetic distance to vertex vs rec energy  
110   //TH3F * fhHaVxyz    ; // Hadron production vertex
111   TH2F * fhHaVxyz    ; // Hadron production vertex
112   TH2F * fhHaR       ; // Hadron distance to vertex vs rec energy  
113
114   TH2F * fhGamE  ; //! E distribution of generated photons, Reco
115   TH2F * fhGamPt ; //! pT distribution of generated photons, Reco
116   TH2F * fhGamPhi; //! phi distribution of generated photon, Reco 
117   TH2F * fhGamEta; //! eta distribution of generated photons, Reco 
118   TH1F * fhGamDeltaE  ; //! MC-Reco E distribution of generated photons 
119   TH1F * fhGamDeltaPt ; //! MC-Reco pT distribution of generated photons
120   TH1F * fhGamDeltaPhi; //! MC-Reco phi distribution of generated photons
121   TH1F * fhGamDeltaEta; //! MC-Reco eta distribution of generated photons
122   TH1F * fhGamRatioE  ; //! Reco/MC E distribution of generated photons 
123   TH1F * fhGamRatioPt ; //! Reco/MC pT distribution of generated photons
124   TH1F * fhGamRatioPhi; //! Reco/MC phi distribution of generated photons
125   TH1F * fhGamRatioEta; //! Reco/MC eta distribution of generated photons
126   TH2F * fhEleE  ; //! E distribution of generated electrons, Reco
127   TH2F * fhElePt ; //! pT distribution of generated electrons, Reco
128   TH2F * fhElePhi; //! phi distribution of generated electron, Reco 
129   TH2F * fhEleEta; //! eta distribution of generated electrons, Reco            
130   TH2F * fhPi0E  ; //! E distribution of generated pi0, Reco, gamma decay overlapped
131   TH2F * fhPi0Pt ; //! pT distribution of generated pi0, Reco, gamma decay overlapped
132   TH2F * fhPi0Phi; //! phi distribution of generated pi0, Reco, gamma decay overlapped
133   TH2F * fhPi0Eta; //! eta distribution of generated pi0, Reco, gamma decay overlapped
134   TH2F * fhNeHadE  ; //! E distribution of generated neutral hadron, Reco
135   TH2F * fhNeHadPt ; //! pT distribution of generated neutral hadron, Reco
136   TH2F * fhNeHadPhi; //! phi distribution of generated neutral hadron, Reco 
137   TH2F * fhNeHadEta; //! eta distribution of generated neutral hadron, Reco     
138   TH2F * fhChHadE  ; //! E distribution of generated charged hadron, Reco
139   TH2F * fhChHadPt ; //! pT distribution of generated charged hadron, Reco
140   TH2F * fhChHadPhi; //! phi distribution of generated charged hadron, Reco 
141   TH2F * fhChHadEta; //! eta distribution of generated charged hadron, Reco 
142
143   TH2F * fhGamECharged  ; //! E distribution of generated photons, Reco, track matched cluster
144   TH2F * fhGamPtCharged ; //! pT distribution of generated photons, Reco, track matched cluster
145   TH2F * fhGamPhiCharged; //! phi distribution of generated photon, Reco, track matched cluster 
146   TH2F * fhGamEtaCharged; //! eta distribution of generated photons, Reco, track matched cluster 
147   TH2F * fhEleECharged  ; //! E distribution of generated electrons, Reco, track matched cluster
148   TH2F * fhElePtCharged ; //! pT distribution of generated electrons, Reco, track matched cluster
149   TH2F * fhElePhiCharged; //! phi distribution of generated electron, Reco, track matched cluster 
150   TH2F * fhEleEtaCharged; //! eta distribution of generated electrons, Reco, track matched cluster              
151   TH2F * fhPi0ECharged  ; //! E distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster
152   TH2F * fhPi0PtCharged ; //! pT distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster
153   TH2F * fhPi0PhiCharged; //! phi distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster
154   TH2F * fhPi0EtaCharged; //! eta distribution of generated pi0, Reco, gamma decay overlapped, track matched cluster
155   TH2F * fhNeHadECharged  ; //! E distribution of generated neutral hadron, Reco, track matched cluster
156   TH2F * fhNeHadPtCharged ; //! pT distribution of generated neutral hadron, Reco, track matched cluster
157   TH2F * fhNeHadPhiCharged; //! phi distribution of generated neutral hadron, Reco , track matched cluster
158   TH2F * fhNeHadEtaCharged; //! eta distribution of generated neutral hadron, Reco, track matched cluster       
159   TH2F * fhChHadECharged  ; //! E distribution of generated charged hadron, Reco, track matched cluster
160   TH2F * fhChHadPtCharged ; //! pT distribution of generated charged hadron, Reco, track matched cluster
161   TH2F * fhChHadPhiCharged; //! phi distribution of generated charged hadron, Reco, track matched cluster 
162   TH2F * fhChHadEtaCharged; //! eta distribution of generated charged hadron, Reco, track matched cluster       
163         
164   TH1F *fhGenGamAccE   ; // E of primary gamma
165   TH1F *fhGenGamAccPt  ; // pt of primary gamma
166   TH1F *fhGenGamAccEta ; // eta of primart gamma
167   TH1F *fhGenGamAccPhi ; // phi of primary gamma        
168   TH1F *fhGenPi0AccE   ; // E of primary pi0
169   TH1F *fhGenPi0AccPt  ; // pt of primary pi0
170   TH1F *fhGenPi0AccEta ; // eta of primart pi0
171   TH1F *fhGenPi0AccPhi ; // phi of primary pi0          
172         
173   //Histograms for track-matching
174   TH1F *fh1pOverE;     //! p/E for track-cluster matches
175   TH1F *fh1dR;         //! distance between projected track and cluster
176   TH2F *fh2EledEdx;    //! dE/dx vs. momentum for electron candidates
177   TH2F *fh2MatchdEdx;  //! dE/dx vs. momentum for all matches
178         
179   TH1F *fhMCEle1pOverE;     //! p/E for track-cluster matches, MC electrons
180   TH1F *fhMCEle1dR;         //! distance between projected track and cluster, MC electrons
181   TH2F *fhMCEle2MatchdEdx;  //! dE/dx vs. momentum for all matches, MC electrons        
182         
183   TH1F *fhMCChHad1pOverE;     //! p/E for track-cluster matches, MC charged hadrons
184   TH1F *fhMCChHad1dR;         //! distance between projected track and cluster, MC charged hadrons
185   TH2F *fhMCChHad2MatchdEdx;  //! dE/dx vs. momentum for all matches, MC charged
186         
187   TH1F *fhMCNeutral1pOverE;     //! p/E for track-cluster matches, MC neutral
188   TH1F *fhMCNeutral1dR;         //! distance between projected track and cluster, MC neutral
189   TH2F *fhMCNeutral2MatchdEdx;  //! dE/dx vs. momentum for all matches, MC neutral      
190         
191   TH1F *fh1pOverER02;           //! p/E for track-cluster matches, dR > 0.2     
192   TH1F *fhMCEle1pOverER02;      //! p/E for track-cluster matches, dR > 0.2, MC electrons
193   TH1F *fhMCChHad1pOverER02;    //! p/E for track-cluster matches, dR > 0.2, MC charged hadrons
194   TH1F *fhMCNeutral1pOverER02;  //! p/E for track-cluster matches, dR > 0.2, MC neutral
195         
196         ClassDef(AliAnaCalorimeterQA,1)
197 } ;
198
199
200 #endif //ALIANACALORIMETERQA_H
201
202
203