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