]>
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$ | |
463ee300 | 10 | * Revision 1.2 2007/02/09 18:40:40 schutz |
11 | * B\bNew version from Gustavo | |
12 | * | |
2a1d8a29 | 13 | * Revision 1.1 2007/01/23 17:17:29 schutz |
14 | * New Gamma package | |
15 | * | |
f9cea31c | 16 | * |
17 | */ | |
18 | ||
19 | //_________________________________________________________________________ | |
20 | // Class for the analysis of gamma-jet correlations. | |
21 | // Basically it seaches for a prompt photon in the Calorimeters acceptance, | |
22 | // if so we construct a jet around the highest pt particle in the opposite | |
23 | // side in azimuth. This jet has to fullfill several conditions to be | |
24 | // accepted. Then the fragmentation function of this jet is constructed | |
25 | // Class created from old AliPHOSGammaPion | |
26 | ||
27 | //*-- Author: Gustavo Conesa (INFN-LNF) | |
28 | ||
29 | // --- ROOT system --- | |
30 | #include <TROOT.h> | |
31 | #include <TChain.h> | |
32 | #include "TTask.h" | |
33 | #include "TArrayD.h" | |
34 | #include "TChain.h" | |
35 | #include <TH2F.h> | |
36 | #include <TTree.h> | |
37 | #include "AliAnaGammaDirect.h" | |
38 | ||
39 | class AliESD ; | |
40 | ||
41 | class AliAnaGammaHadron : public AliAnaGammaDirect { | |
42 | ||
43 | public: | |
44 | ||
45 | AliAnaGammaHadron(const char *name) ; // default ctor | |
46 | AliAnaGammaHadron(const AliAnaGammaHadron & gj) ; // cpy ctor | |
463ee300 | 47 | AliAnaGammaHadron & operator = (const AliAnaGammaHadron & g) ;//cpy assignment |
f9cea31c | 48 | virtual ~AliAnaGammaHadron() ; //virtual dtor |
463ee300 | 49 | |
f9cea31c | 50 | virtual void Exec(Option_t * opt = "") ; |
2a1d8a29 | 51 | virtual void ConnectInputData(Option_t *); |
52 | virtual void CreateOutputObjects(); | |
f9cea31c | 53 | virtual void Terminate(Option_t * opt = ""); |
2a1d8a29 | 54 | |
55 | void InitParameters(); | |
f9cea31c | 56 | Double_t GetAngleMaxParam(Int_t i) const {return fAngleMaxParam.At(i) ; } |
57 | Double_t GetInvMassMaxCut() const {return fInvMassMaxCut ; } | |
58 | Double_t GetInvMassMinCut() const {return fInvMassMinCut ; } | |
59 | Double_t GetPhiMaxCut() const {return fPhiMaxCut ; } | |
60 | Double_t GetPhiMinCut() const {return fPhiMinCut ; } | |
61 | Float_t GetMinPtPion() const {return fMinPtPion ; } | |
62 | ||
63 | void Print(const Option_t * opt)const; | |
64 | ||
65 | void SetAngleMaxParam(Int_t i, Double_t par) | |
66 | {fAngleMaxParam.AddAt(par,i) ; } | |
67 | void SetMinPtPion(Float_t pt){fMinPtPion = pt; }; | |
68 | void SetInvMassCutRange(Double_t invmassmin, Double_t invmassmax) | |
69 | {fInvMassMaxCut =invmassmax; fInvMassMinCut =invmassmin;} | |
70 | void SetPhiCutRange(Double_t phimin, Double_t phimax) | |
71 | {fPhiMaxCut =phimax; fPhiMinCut =phimin;} | |
72 | ||
73 | private: | |
74 | ||
75 | Bool_t IsAngleInWindow(const Float_t angle, const Float_t e); | |
76 | void MakeGammaChargedCorrelation(TClonesArray * pl, TParticle *pGamma) const ; | |
77 | void MakeGammaNeutralCorrelation(TClonesArray * pl, TParticle *pGamma) ; | |
f9cea31c | 78 | |
79 | private: | |
80 | ||
f9cea31c | 81 | Double_t fPhiMaxCut ; // |
82 | Double_t fPhiMinCut ; // | |
f9cea31c | 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 | |
f9cea31c | 88 | TArrayD fAngleMaxParam ; //Max opening angle selection parameters |
f9cea31c | 89 | |
90 | //Histograms | |
91 | ||
92 | TH2F * fhPhiCharged ; | |
93 | TH2F * fhPhiNeutral ; | |
94 | TH2F * fhEtaCharged ; | |
95 | TH2F * fhEtaNeutral ; | |
96 | TH2F * fhDeltaPhiGammaCharged ; | |
97 | TH2F * fhDeltaPhiGammaNeutral ; | |
98 | TH2F * fhDeltaEtaGammaCharged ; | |
99 | TH2F * fhDeltaEtaGammaNeutral ; | |
100 | ||
101 | TH2F * fhCorrelationGammaNeutral ; | |
102 | TH2F * fhCorrelationGammaCharged ; | |
103 | ||
104 | TH2F * fhAnglePairAccepted ; | |
105 | TH2F * fhAnglePairNoCut ; | |
106 | TH2F * fhAnglePairAzimuthCut ; | |
107 | TH2F * fhAnglePairOpeningAngleCut ; | |
108 | TH2F * fhAnglePairAllCut ; | |
109 | TH2F * fhInvMassPairNoCut ; | |
110 | TH2F * fhInvMassPairAzimuthCut ; | |
111 | TH2F * fhInvMassPairOpeningAngleCut ; | |
112 | TH2F * fhInvMassPairAllCut ; | |
113 | ||
114 | ClassDef(AliAnaGammaHadron,0) | |
115 | } ; | |
116 | ||
117 | ||
118 | #endif //ALIANAGAMMAHADRON_H | |
119 | ||
120 | ||
121 |