]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/PartCorrDep/AliAnaPhoton.h
pass the TString with & to avoid crashes
[u/mrichter/AliRoot.git] / PWG4 / PartCorrDep / AliAnaPhoton.h
CommitLineData
1c5acb87 1#ifndef ALIANAPHOTON_H
2#define ALIANAPHOTON_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5/* $Id: AliAnaPhoton.h 27413 2008-07-18 13:28:12Z gconesab $ */
6
7//_________________________________________________________________________
8//
9// Class for the photon identification.
10// Clusters from calorimeters are identified as photons
11// and kept in the AOD. Few histograms produced.
12//
13
14//-- Author: Gustavo Conesa (INFN-LNF)
15
16// --- ROOT system ---
17class TH2F ;
123fc3bd 18class TH1F;
2244659d 19class TH3D;
1c5acb87 20class TString ;
0c1383b5 21class TObjString;
1c5acb87 22
23// --- ANALYSIS system ---
24#include "AliAnaPartCorrBaseClass.h"
123fc3bd 25class AliStack;
26class TParticle;
1c5acb87 27
28class TList ;
29
30class AliAnaPhoton : public AliAnaPartCorrBaseClass {
31
78219bac 32 public:
1c5acb87 33 AliAnaPhoton() ; // default ctor
78219bac 34 virtual ~AliAnaPhoton() ; //virtual dtor
35 private:
1c5acb87 36 AliAnaPhoton(const AliAnaPhoton & g) ; // cpy ctor
37 AliAnaPhoton & operator = (const AliAnaPhoton & g) ;//cpy assignment
78219bac 38
39 public:
0c1383b5 40
41 TObjString * GetAnalysisCuts();
42 TList * GetCreateOutputObjects();
1c5acb87 43
6639984f 44 void Init();
45
1c5acb87 46 void MakeAnalysisFillAOD() ;
47
48 void MakeAnalysisFillHistograms() ;
49
50 void Print(const Option_t * opt)const;
51
52 TString GetCalorimeter() const {return fCalorimeter ; }
99ca69fc 53 void SetCalorimeter(TString &det) {fCalorimeter = det ; }
1c5acb87 54
a3aebfff 55 Bool_t IsTrackMatchRejectionOn() const {return fRejectTrackMatch ; }
56 void SwitchOnTrackMatchRejection() {fRejectTrackMatch = kTRUE ; }
57 void SwitchOffTrackMatchRejection() {fRejectTrackMatch = kFALSE ; }
58
1e86c71e 59 Bool_t IsCheckConversionOn() const {return fCheckConversion ; }
60 void SwitchOnConversionChecker() {fCheckConversion = kTRUE ; }
61 void SwitchOffConversionChecker() {fCheckConversion = kFALSE ; }
62
63 Bool_t AreConvertedPairsInAOD() const {return fAddConvertedPairsToAOD ; }
64 void SwitchOnAdditionConvertedPairsToAOD() {fAddConvertedPairsToAOD = kTRUE ; }
65 void SwitchOffAdditionConvertedPairsToAOD() {fAddConvertedPairsToAOD = kFALSE ; }
66
1c5acb87 67 void InitParameters();
68
69 void SetMinDistanceToBadChannel(Float_t m1, Float_t m2, Float_t m3) {
70 fMinDist = m1;
71 fMinDist2 = m2;
72 fMinDist3 = m3;
73 }
1e86c71e 74
75 Float_t GetMassCut() const {return fMassCut ; }
76 void SetMassCut(Float_t m) {fMassCut = m ; }
77
4cf55759 78 void SetTimeCut(Double_t min, Double_t max) {fTimeCutMin = min; fTimeCutMax = max;}
79 Double_t GetTimeCutMin() const {return fTimeCutMin;}
80 Double_t GetTimeCutMax() const {return fTimeCutMax;}
81
2ac125bf 82 void SetNCellCut(Int_t n) {fNCellsCut = n;}
83 Double_t GetNCellCut() const {return fNCellsCut;}
84
85
1c5acb87 86 private:
87
88 TString fCalorimeter ; // Calorimeter where the gamma is searched;
89 Float_t fMinDist ; // Minimal distance to bad channel to accept cluster
90 Float_t fMinDist2; // Cuts on Minimal distance to study acceptance evaluation
91 Float_t fMinDist3; // One more cut on distance used for acceptance-efficiency study
1e86c71e 92 Bool_t fRejectTrackMatch ; //If PID on, reject clusters which have an associated TPC track
93 Bool_t fCheckConversion; // Combine pairs of clusters with mass close to 0
94 Bool_t fAddConvertedPairsToAOD; // Put Converted pairs in AOD
95 Float_t fMassCut; // Mass cut for the conversion pairs selection
4cf55759 96 Double_t fTimeCutMin ; // Remove clusters/cells with time smaller than this value, in ns
97 Double_t fTimeCutMax ; // Remove clusters/cells with time larger than this value, in ns
2ac125bf 98 Int_t fNCellsCut ; // Accept for the analysis clusters with more than fNCellsCut cells
99
2244659d 100 //Histograms
101 TH3D * fhVertex; //! vertex distribution
102 TH2F * fhNtraNclu; //! track multiplicity distribution vs cluster multiplicity
1c5acb87 103 TH1F * fhPtPhoton ; //! Number of identified photon vs transerse momentum
104 TH2F * fhPhiPhoton ; //! Azimuthal angle of identified photon vs transerse momentum
105 TH2F * fhEtaPhoton ; //! Pseudorapidity of identified photon vs transerse momentum
106
107 //MC
123fc3bd 108 TH1F * fhDeltaE ; //! MC-Reco E distribution
109 TH1F * fhDeltaPt ; //! MC-Reco pT distribution
110 TH1F * fhRatioE ; //! Reco/MC E distribution
111 TH1F * fhRatioPt ; //! Reco/MC pT distribution
112 TH2F * fh2E ; //! E distribution, Reco vs MC
113 TH2F * fh2Pt ; //! pT distribution, Reco vs MC
114
591cc579 115 TH1F * fhPtMCPhoton; //! Number of identified gamma
116 TH2F * fhPhiMCPhoton; //! Phi of identified gamma
117 TH2F * fhEtaMCPhoton; //! eta of identified gamma
118
1c5acb87 119 TH1F * fhPtPrompt; //! Number of identified prompt gamma
120 TH2F * fhPhiPrompt; //! Phi of identified prompt gamma
121 TH2F * fhEtaPrompt; //! eta of identified prompt gamma
122
123 TH1F * fhPtFragmentation; //! Number of identified fragmentation gamma
124 TH2F * fhPhiFragmentation; //! Phi of identified fragmentation gamma
125 TH2F * fhEtaFragmentation; //! eta of identified fragmentation gamma
126
6639984f 127 TH1F * fhPtISR; //! Number of identified initial state radiation gamma
128 TH2F * fhPhiISR; //! Phi of identified initial state radiation gamma
129 TH2F * fhEtaISR; //! eta of identified initial state radiation gamma
130
1c5acb87 131 TH1F * fhPtPi0Decay; //! Number of identified Pi0Decay gamma
132 TH2F * fhPhiPi0Decay; //! Phi of identified Pi0Decay gamma
133 TH2F * fhEtaPi0Decay; //! eta of identified Pi0Decay gamma
134
135 TH1F * fhPtOtherDecay; //! Number of identified OtherDecay gamma
136 TH2F * fhPhiOtherDecay; //! Phi of identified OtherDecay gamma
137 TH2F * fhEtaOtherDecay; //! eta of identified OtherDecay gamma
138
139 TH1F * fhPtConversion; //! Number of identified Conversion gamma
140 TH2F * fhPhiConversion; //! Phi of identified Conversion gamma
141 TH2F * fhEtaConversion; //! eta of identified Conversion gamma
142
143 TH1F * fhPtUnknown; //! Number of identified Unknown gamma
144 TH2F * fhPhiUnknown; //! Phi of identified Unknown gamma
145 TH2F * fhEtaUnknown; //! eta of identified Unknown gamma
146
2ac125bf 147 ClassDef(AliAnaPhoton,8)
6639984f 148
1c5acb87 149} ;
150
151
152#endif//ALIANAPHOTON_H
153
154
155