]>
Commit | Line | Data |
---|---|---|
f9cea31c | 1 | #ifndef ALIANAGAMMAHADRON_H |
2 | #define ALIANAGAMMAHADRON_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 | /* History of cvs commits: | |
8 | * | |
9 | * $Log$ | |
2a1d8a29 | 10 | * Revision 1.1 2007/01/23 17:17:29 schutz |
11 | * New Gamma package | |
12 | * | |
f9cea31c | 13 | * |
14 | */ | |
15 | ||
16 | //_________________________________________________________________________ | |
17 | // Class for the analysis of gamma-jet correlations. | |
18 | // Basically it seaches for a prompt photon in the Calorimeters acceptance, | |
19 | // if so we construct a jet around the highest pt particle in the opposite | |
20 | // side in azimuth. This jet has to fullfill several conditions to be | |
21 | // accepted. Then the fragmentation function of this jet is constructed | |
22 | // Class created from old AliPHOSGammaPion | |
23 | ||
24 | //*-- Author: Gustavo Conesa (INFN-LNF) | |
25 | ||
26 | // --- ROOT system --- | |
27 | #include <TROOT.h> | |
28 | #include <TChain.h> | |
29 | #include "TTask.h" | |
30 | #include "TArrayD.h" | |
31 | #include "TChain.h" | |
32 | #include <TH2F.h> | |
33 | #include <TTree.h> | |
34 | #include "AliAnaGammaDirect.h" | |
35 | ||
36 | class AliESD ; | |
37 | ||
38 | class AliAnaGammaHadron : public AliAnaGammaDirect { | |
39 | ||
40 | public: | |
41 | ||
42 | AliAnaGammaHadron(const char *name) ; // default ctor | |
43 | AliAnaGammaHadron(const AliAnaGammaHadron & gj) ; // cpy ctor | |
44 | virtual ~AliAnaGammaHadron() ; //virtual dtor | |
45 | virtual void Exec(Option_t * opt = "") ; | |
2a1d8a29 | 46 | virtual void ConnectInputData(Option_t *); |
47 | virtual void CreateOutputObjects(); | |
f9cea31c | 48 | virtual void Terminate(Option_t * opt = ""); |
2a1d8a29 | 49 | |
50 | void InitParameters(); | |
f9cea31c | 51 | Double_t GetAngleMaxParam(Int_t i) const {return fAngleMaxParam.At(i) ; } |
52 | Double_t GetInvMassMaxCut() const {return fInvMassMaxCut ; } | |
53 | Double_t GetInvMassMinCut() const {return fInvMassMinCut ; } | |
54 | Double_t GetPhiMaxCut() const {return fPhiMaxCut ; } | |
55 | Double_t GetPhiMinCut() const {return fPhiMinCut ; } | |
56 | Float_t GetMinPtPion() const {return fMinPtPion ; } | |
57 | ||
58 | void Print(const Option_t * opt)const; | |
59 | ||
60 | void SetAngleMaxParam(Int_t i, Double_t par) | |
61 | {fAngleMaxParam.AddAt(par,i) ; } | |
62 | void SetMinPtPion(Float_t pt){fMinPtPion = pt; }; | |
63 | void SetInvMassCutRange(Double_t invmassmin, Double_t invmassmax) | |
64 | {fInvMassMaxCut =invmassmax; fInvMassMinCut =invmassmin;} | |
65 | void SetPhiCutRange(Double_t phimin, Double_t phimax) | |
66 | {fPhiMaxCut =phimax; fPhiMinCut =phimin;} | |
67 | ||
68 | private: | |
69 | ||
70 | Bool_t IsAngleInWindow(const Float_t angle, const Float_t e); | |
71 | void MakeGammaChargedCorrelation(TClonesArray * pl, TParticle *pGamma) const ; | |
72 | void MakeGammaNeutralCorrelation(TClonesArray * pl, TParticle *pGamma) ; | |
73 | void MakeHistos() ; | |
74 | ||
75 | private: | |
76 | ||
77 | // TTree *fChain ; //!pointer to the analyzed TTree or TChain | |
78 | //AliESD *fESD ; //! Declaration of leave types | |
79 | ||
80 | Double_t fPhiMaxCut ; // | |
81 | Double_t fPhiMinCut ; // | |
82 | // Double_t fGammaPtCut ; // Min pt in Calorimeter | |
83 | Double_t fInvMassMaxCut ; // Invariant Mass cut maximum | |
84 | Double_t fInvMassMinCut ; // Invariant Masscut minimun | |
85 | ||
86 | Double_t fMinPtPion; // Minimum pt of pion | |
87 | TObjArray *fOutputContainer ; //! output data container | |
88 | TString fNamePtThres[10]; // String name of pt th to append to histos | |
89 | TArrayD fAngleMaxParam ; //Max opening angle selection parameters | |
90 | //TString fCalorimeter ; //PHOS or EMCAL detects Gamma | |
91 | //Bool_t fEMCALPID ; //Fill EMCAL particle lists with particles with corresponding pid | |
92 | //Bool_t fPHOSPID; //Fill PHOS particle lists with particles with corresponding pid | |
93 | ||
94 | //Histograms | |
95 | ||
96 | TH2F * fhPhiCharged ; | |
97 | TH2F * fhPhiNeutral ; | |
98 | TH2F * fhEtaCharged ; | |
99 | TH2F * fhEtaNeutral ; | |
100 | TH2F * fhDeltaPhiGammaCharged ; | |
101 | TH2F * fhDeltaPhiGammaNeutral ; | |
102 | TH2F * fhDeltaEtaGammaCharged ; | |
103 | TH2F * fhDeltaEtaGammaNeutral ; | |
104 | ||
105 | TH2F * fhCorrelationGammaNeutral ; | |
106 | TH2F * fhCorrelationGammaCharged ; | |
107 | ||
108 | TH2F * fhAnglePairAccepted ; | |
109 | TH2F * fhAnglePairNoCut ; | |
110 | TH2F * fhAnglePairAzimuthCut ; | |
111 | TH2F * fhAnglePairOpeningAngleCut ; | |
112 | TH2F * fhAnglePairAllCut ; | |
113 | TH2F * fhInvMassPairNoCut ; | |
114 | TH2F * fhInvMassPairAzimuthCut ; | |
115 | TH2F * fhInvMassPairOpeningAngleCut ; | |
116 | TH2F * fhInvMassPairAllCut ; | |
117 | ||
118 | ClassDef(AliAnaGammaHadron,0) | |
119 | } ; | |
120 | ||
121 | ||
122 | #endif //ALIANAGAMMAHADRON_H | |
123 | ||
124 | ||
125 |