1 #ifndef ALIISOLATIONCUT_H
2 #define ALIISOLATIONCUT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
7 //_________________________________________________________________________
8 // Class containing methods for the isolation cut.
9 // An AOD candidate (AliAODPWG4ParticleCorrelation type)
10 // is passed. Look in a cone around the candidate and study
11 // the hadronic activity inside to decide if the candidate is isolated
15 // -- Author: Gustavo Conesa (INFN-LNF)
17 //-Yaxian Mao (add the possibility for different IC method with different pt range, 01/10/2010)
19 // --- ROOT system ---
23 // --- ANALYSIS system ---
24 class AliAODPWG4ParticleCorrelation ;
25 class AliCaloTrackReader ;
27 class AliIsolationCut : public TObject {
30 AliIsolationCut() ; // default ctor
31 virtual ~AliIsolationCut() {;} //virtual dtalr
33 AliIsolationCut(const AliIsolationCut & g) ; // cpy ctor
34 AliIsolationCut & operator = (const AliIsolationCut & g) ;//cpy assignment
38 enum type {kPtThresIC, kSumPtIC, kPtFracIC, kSumPtFracIC};
39 enum partInCone {kNeutralAndCharged=0, kOnlyNeutral=1, kOnlyCharged=2};
41 Float_t GetConeSize() const {return fConeSize ;}
42 Float_t GetPtThreshold() const {return fPtThreshold;}
43 Float_t GetSumPtThreshold() const {return fSumPtThreshold;}
44 Float_t GetPtFraction() const {return fPtFraction ;}
45 Int_t GetICMethod() const {return fICMethod ;}
46 Int_t GetParticleTypeInCone() const {return fPartInCone ;}
48 TString GetICParametersList() ;
50 void MakeIsolationCut(TObjArray * const plCTS, TObjArray * const plNe, AliCaloTrackReader * const reader,
51 const Bool_t bFillAOD, AliAODPWG4ParticleCorrelation * pCandidate, const TString &aodObjArrayName,
52 Int_t &n, Int_t & nfrac, Float_t &ptsum, Bool_t & isolated) const ;
54 void Print(const Option_t * opt)const;
56 void SetConeSize(Float_t r) {fConeSize = r ; }
57 void SetPtThreshold(Float_t pt) {fPtThreshold = pt; }
58 void SetSumPtThreshold(Float_t sumpt) {fSumPtThreshold = sumpt; }
59 void SetPtFraction(Float_t pt) {fPtFraction = pt; }
60 void SetICMethod(Int_t i ) {fICMethod = i ; }
61 void SetParticleTypeInCone(Int_t i){fPartInCone = i;}
63 void InitParameters();
68 Float_t fConeSize ; //Size of the isolation cone
69 Float_t fPtThreshold ; //Mimium pt of the particles in the cone or sum in cone (UE pt mean in the forward region cone)
70 Float_t fSumPtThreshold ; //Minium of sum pt of the particles in the cone (UE sum in the forward region cone)
71 Float_t fPtFraction ; //Fraction of the momentum of particles in cone or sum in cone
72 Int_t fICMethod ; //Isolation cut method to be used
73 // kPtIC: Pt threshold method
74 // kSumPtIC: Cone pt sum method
75 // kPtFracIC: Pt threshold, fraction of candidate pt, method
76 // kSumPtFracIC: Cone pt sum , fraction of cone sum, method
77 Int_t fPartInCone; // Type of particles inside cone:
78 // kNeutralAndCharged, kOnlyNeutral, kOnlyCharged
82 ClassDef(AliIsolationCut,3)
86 #endif //ALIISOLATIONCUT_H