]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnCutAOD2010.h
Added an equivalent to the cuts 2010 for AODs and adapted the primary vertex cut...
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnCutAOD2010.h
1 //
2 // Class AliRsnCutRange
3 //
4 // General implementation of cuts which check a value inside a range.
5 // This range can be defined by two integers or two doubles.
6 // A user-friendly enumeration allows to define what is checked.
7 //
8 // authors: Martin Vala (martin.vala@cern.ch)
9 //          Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
10 //
11
12 #ifndef ALIRSNCUTAOD2010_H
13 #define ALIRSNCUTAOD2010_H
14
15 #include "AliPID.h"
16 #include "AliAODTrack.h"
17 #include "AliAODpidUtil.h"
18
19 #include "AliRsnCut.h"
20
21 class AliRsnCutAOD2010 : public AliRsnCut
22 {
23   public:
24
25     AliRsnCutAOD2010();
26     AliRsnCutAOD2010(const char *name);
27     AliRsnCutAOD2010(const AliRsnCutAOD2010& copy);
28     virtual ~AliRsnCutAOD2010() {;};
29
30     virtual Bool_t   IsSelected(TObject *obj1, TObject *obj2 = 0x0);
31     
32     void             SetMC       (Bool_t yn = kTRUE) {fIsMC = yn;}
33     void             SetCheckITS (Bool_t yn = kTRUE) {fCheckITS = yn;}
34     void             SetCheckTPC (Bool_t yn = kTRUE) {fCheckTPC = yn;}
35     void             SetCheckTOF (Bool_t yn = kTRUE) {fCheckTOF = yn;}
36     void             SetUseGlobal(Bool_t yn = kTRUE) {fUseGlobal = yn;}
37     void             SetUseITSSA (Bool_t yn = kTRUE) {fUseITSSA = yn;}
38     void             SetPIDtype  (AliPID::EParticleType pid) {fPIDtype = pid;}
39     
40     void             SetTPCminNclusters(Int_t v)         {fTPCminNclusters = v;}
41     void             SetTPCmaxChi2(Double_t v)           {fTPCmaxChi2 = v;}     
42     void             SetTPCmaxNSigmaDCA(Double_t v)      {fTPCmaxNSigmaDCA = v;}
43     void             SetTPCparamDCA(Int_t i, Double_t v) {if (i >= 0 && i < 3) fTPCparamDCA[i] = v;} 
44     void             SetTPCparamBB(Int_t i, Double_t v)  {if (i >= 0 && i < 3) fTPCparamBB[i] = v;}  
45     void             SetTPClowBand(Double_t v)           {fTPClowBand = v;}     
46     void             SetTPChighBand(Double_t v)          {fTPChighBand = v;}    
47     void             SetTPClowLimit(Double_t v)          {fTPClowLimit = v;}    
48     
49     void             SetITSminNclusters(Int_t v)         {fITSminNclusters = v;}
50     void             SetITSmaxChi2(Double_t v)           {fITSmaxChi2 = v;}     
51     void             SetITSmaxNSigmaDCA(Double_t v)      {fITSmaxNSigmaDCA = v;}
52     void             SetITSparamDCA(Int_t i, Double_t v) {if (i >= 0 && i < 3) fITSparamDCA[i] = v;} 
53     void             SetITSparamBB(Int_t i, Double_t v)  {if (i >= 0 && i < 3) fITSparamBB[i] = v;}  
54     void             SetITSband(Double_t v)              {fITSband = v;}    
55
56     void             SetTOFrange(Double_t v1, Double_t v2) {fTOFlowLimit = v1; fTOFhighLimit = v2;}
57
58   protected:
59   
60     AliRsnCutAOD2010& operator=(const AliRsnCutAOD2010& /*copy*/) {return (*this);}
61   
62     Bool_t                fIsMC;             // switch for MC analysis
63     Bool_t                fCheckITS;         // switch for ITS dE/dx check
64     Bool_t                fCheckTPC;         // switch for TPC dE/dx check
65     Bool_t                fCheckTOF;         // switch for TOF time check
66     Bool_t                fUseGlobal;        // switch to use TPC global tracks
67     Bool_t                fUseITSSA;         // switch to use ITS standalone tracks
68     
69     AliPID::EParticleType fPIDtype;          // particle type for which PID is checked   
70     
71     Int_t                 fTPCminNclusters;  // minimum number of clusters in TPC
72     Double_t              fTPCmaxChi2;       // maximum chi2 / number of clusters in TPC
73     Double_t              fTPCmaxNSigmaDCA;  // cut in DCA (transv) in numbers of sigma (pt-dependent)
74     Double_t              fTPCparamDCA[3];   // parameters to compute sigma for DCA
75     Double_t              fTPCparamBB[5];    // parameters for TPC Bethe-Bloch parameterization
76     Double_t              fTPClowBand;       // large band for low momentum PID
77     Double_t              fTPChighBand;      // large band for low momentum PID
78     Double_t              fTPClowLimit;      // limit of low momentum region
79     
80     Int_t                 fITSminNclusters;  // minimum number of clusters in TPC
81     Double_t              fITSmaxChi2;       // maximum chi2 / number of clusters in TPC
82     Double_t              fITSmaxNSigmaDCA;  // cut in DCA (transv) in numbers of sigma (pt-dependent)
83     Double_t              fITSparamDCA[3];   // parameters to compute sigma for DCA
84     Double_t              fITSparamBB[5];    // parameters for TPC Bethe-Bloch parameterization
85     Double_t              fITSband;          // fiducial region for selection of PID
86     
87     Double_t              fTOFlowLimit;      // low limit in asymmetric TOF PID cut
88     Double_t              fTOFhighLimit;     // low limit in asymmetric TOF PID cut
89     
90     AliAODpidUtil         fPID;              // PID utility
91
92     ClassDef(AliRsnCutAOD2010, 1)
93 };
94
95 #endif