PartCorr split in 2 Base and Dep; coding violations corrected; PHOS geometry can...
[u/mrichter/AliRoot.git] / PWG4 / PartCorrDep / AliAnaParticleJetFinderCorrelation.h
1 #ifndef ALIANAPARTICLEJETFINDERCORRELATION_H
2 #define ALIANAPARTICLEJETFINDERCORRELATION_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice     */
5 /* $Id: AliAnaParticleJetFinderCorrelation.h 21839 2007-10-29 13:49:42Z gustavo $ */
6
7
8 //_________________________________________________________________________
9 // Class that contains the algorithm for the analysis of particle (direct gamma) - jet 
10 // (standard jet found with JETAN) correlation 
11 // Particle and jet for correlation found by independent algorithms.
12 // For Example direct isolated photon found in AliAnaGammaDirect and the jet with JETAN
13 //
14 //-- Author: Gustavo Conesa (INFN-LNF)
15
16 // --- ROOT system ---
17 class TH2F;
18
19 //---- Analysis system ----
20 class AliLog;
21 #include "AliAnaPartCorrBaseClass.h"
22 class AliAODPWG4ParticleCorrelation ;
23
24 class AliAnaParticleJetFinderCorrelation : public AliAnaPartCorrBaseClass {
25        
26         public: 
27        
28                 AliAnaParticleJetFinderCorrelation() ; // default ctor
29                 AliAnaParticleJetFinderCorrelation(const AliAnaParticleJetFinderCorrelation & g) ; // cpy ctor
30                 AliAnaParticleJetFinderCorrelation & operator = (const AliAnaParticleJetFinderCorrelation & g) ;//cpy assignment
31                 virtual ~AliAnaParticleJetFinderCorrelation() {;} //virtual dtor
32               
33                 TList * GetCreateOutputObjects();
34        
35                 void InitParameters();
36        
37                 void Print(const Option_t * opt) const;
38        
39                 Float_t  GetConeSize() const {return fConeSize ; }
40                 Float_t  GetPtThresholdInCone() const {return fPtThresholdInCone ; }       
41                 Double_t GetDeltaPhiMaxCut() const {return fDeltaPhiMaxCut ; }
42                 Double_t GetDeltaPhiMinCut() const {return fDeltaPhiMinCut ; }
43                 Double_t GetRatioMaxCut() const {return fRatioMaxCut ; }
44                 Double_t GetRatioMinCut() const {return fRatioMinCut ; }           
45                 Bool_t   AreJetRefTracks() const {return fUseJetRefTracks ; }
46                 Bool_t   IsCorrelationMadeInHistoMaker() const {return fMakeCorrelationInHistoMaker ;} 
47                 
48                 void SetConeSize(Float_t cone) {fConeSize = cone; }
49                 void SetPtThresholdInCone(Float_t pt){fPtThresholdInCone = pt; };          
50                 void SetDeltaPhiCutRange(Double_t phimin, Double_t phimax)
51                         {fDeltaPhiMaxCut =phimax;  fDeltaPhiMinCut =phimin;}
52                 void SetRatioCutRange(Double_t ratiomin, Double_t ratiomax)
53                         {fRatioMaxCut =ratiomax;  fRatioMinCut = ratiomin ; }
54                 void UseJetRefTracks(Bool_t use) {fUseJetRefTracks = use ; }    
55             void SetMakeCorrelationInHistoMaker(Bool_t make) {fMakeCorrelationInHistoMaker = make ;}    
56                 
57          private:
58     
59                 Int_t SelectJet(AliAODPWG4ParticleCorrelation * particle) const ;
60         
61             void MakeAnalysisFillAOD() ;
62         void MakeAnalysisFillHistograms() ;
63                         
64   private:
65        
66         //selection parameters  
67         Double_t   fDeltaPhiMaxCut ; //! Minimum Delta Phi Gamma-Leading
68         Double_t   fDeltaPhiMinCut ; //!  Maximum Delta Phi Gamma-Leading
69         Double_t   fRatioMaxCut ; //! Jet/ particle Ratio cut maximum
70         Double_t   fRatioMinCut ; //! Jet/particle Ratio cut minimum
71            
72         Double_t   fConeSize  ;         //! Jet cone size 
73         Double_t   fPtThresholdInCone ; //! Jet pT threshold in jet cone
74         Bool_t     fUseJetRefTracks ; //! Use track references from JETAN not the AOD tracks
75         Bool_t     fMakeCorrelationInHistoMaker ; //!Make particle-jet correlation in histogram maker
76            
77         TH2F * fhDeltaEta; //! Difference of jet eta and trigger particle eta as function of trigger particle pT
78         TH2F * fhDeltaPhi;  //! Difference of jet phi and trigger particle phi as function of trigger particle pT
79         TH2F * fhDeltaPt; //! Difference of jet pT and trigger particle pT as function of trigger particle pT
80         TH2F * fhPtRatio; //! Ratio of jet pT and trigger particle pT as function of trigger particle pT
81         TH2F * fhPt; //! jet pT vs trigger particle pT 
82                 
83         TH2F * fhFFz ; //! Accepted reconstructed jet fragmentation function, z=ptjet/pttrig
84         TH2F * fhFFxi; //! Accepted reconstructed jet fragmentation function, xsi = ln(pttrig/ptjet)
85         TH2F * fhFFpt; //! Jet particle pt distribution in cone
86         TH2F * fhNTracksInCone   ; //! jet multiplicity in cone
87            
88         ClassDef(AliAnaParticleJetFinderCorrelation,1)
89  } ;
90
91
92 #endif //ALIANAPARTICLEJETFINDERCORRELATION_H
93
94
95