]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG4/AliIsolationCut.h
New more general analysis implemention for particle identification and correlation...
[u/mrichter/AliRoot.git] / PWG4 / AliIsolationCut.h
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     */
5 /* $Id:  */
6
7 /* History of cvs commits:
8  *
9  * $Log$
10  *
11  *
12  */
13
14 //_________________________________________________________________________
15
16 // Class containing methods for the isolation cut. 
17 //
18 //
19 // 
20
21 // -- Author: Gustavo Conesa (INFN-LNF)
22
23 // --- ROOT system --- 
24 #include <TObject.h>
25 //#include <TSeqCollection.h>
26 class TSeqCollection ;
27
28 // --- ANALYSIS system ---
29 //#include <AliAODParticleCorrelation.h>
30 class AliAODParticleCorrelation ;
31
32 class AliIsolationCut : public TObject {
33   
34  public: 
35   
36   AliIsolationCut() ; // default ctor
37   AliIsolationCut(const AliIsolationCut & g) ; // cpy ctor
38   AliIsolationCut & operator = (const AliIsolationCut & g) ;//cpy assignment
39   virtual ~AliIsolationCut() {;} //virtual dtalr
40   
41   enum type {kPtThresIC, kSumPtIC, kPtFracIC, kSumPtFracIC};
42   
43   Float_t    GetConeSize()          const {return fConeSize ; }
44   Float_t    GetPtThreshold()      const {return fPtThreshold ; }
45   Float_t    GetPtFraction()      const {return fPtFraction ; }
46   Int_t        GetICMethod()          const {return fICMethod ; }
47   
48   void MakeIsolationCut(TSeqCollection * plCTS, TSeqCollection * plNe, Double_t * vertex, 
49                         const Bool_t fillAOD, AliAODParticleCorrelation  * pCandidate, 
50                         const Int_t index1, const Int_t index2, 
51                         Int_t &n, Int_t & nfrac, Float_t &ptsum, Bool_t & isolated) ;  
52   
53   void Print(const Option_t * opt)const;
54   
55   void SetConeSize(Float_t r)              {fConeSize = r ; }
56   void SetPtThreshold(Float_t pt)        {fPtThreshold = pt; }
57   void SetPtFraction(Float_t pt)        {fPtFraction = pt; }
58   void SetICMethod(Int_t i )          {fICMethod = i ; }
59   
60   void InitParameters();
61
62   
63   private:
64      
65   Float_t      fConeSize ; //Size of the isolation cone 
66   Float_t      fPtThreshold ; //Mimium pt of the particles in the cone or sum in cone 
67   Float_t      fPtFraction ; //Fraction of the momentum of particles in cone or sum in cone
68   Int_t        fICMethod ; //Isolation cut method to be used
69                                            // kPtIC: Pt threshold method
70                                            // kSumPtIC: Cone pt sum method
71                                            // kPtFracIC:   Pt threshold, fraction of candidate pt, method
72                                            // kSumPtFracIC:   Cone pt sum , fraction of cone sum, method
73
74   ClassDef(AliIsolationCut,1)
75 } ;
76  
77
78 #endif //AliIsolationCut_H
79
80
81