2 // *** Class AliRsnCutPIDTPC ***
4 // This class implements all cuts which have to be used for the 2010 runs
5 // for phi and generic resonance analysis.
6 // It contains an AliESDtrackCuts object for track quality selection
7 // and some criteria for particle identification with ITS, TPC and TOF.
9 // authors: Martin Vala (martin.vala@cern.ch)
10 // Alberto Pulvirenti (alberto.pulvirenti@ct.infn.it)
13 #ifndef ALIRSNCUTPIDTPC_H
14 #define ALIRSNCUTPIDTPC_H
18 #include "AliRsnCut.h"
23 class AliRsnCutPIDTPC : public AliRsnCut {
26 AliRsnCutPIDTPC(const char *name = "cutTPC",
27 EPARTYPE type = AliPID::kKaon,
28 Double_t nSigmaMin = -3.,
29 Double_t nSigmaMax = 3.,
30 Bool_t rejectOutside = kTRUE);
32 AliRsnCutPIDTPC(const AliRsnCutPIDTPC& copy);
33 AliRsnCutPIDTPC& operator=(const AliRsnCutPIDTPC& copy);
34 virtual ~AliRsnCutPIDTPC() { }
36 AliESDpid* ESDpid() {return fESDpid;}
37 AliAODpidUtil* AODpid() {return fAODpid;}
39 void SetRejectOutside(Bool_t yn = kTRUE) {fRejectOutside = yn;}
40 void SetMomentumRange(Double_t min, Double_t max) {fMomMin = min; fMomMax = max;}
41 void SetNSigmaRange(Double_t min, Double_t max) {fMinD = min; fMaxD = max;}
42 void SetRefType(EPARTYPE type) {fRefType = type;}
43 void SetBBParam(Double_t *p) {SetBBParam(p[0], p[1], p[2], p[3], p[4]);}
44 void SetBBParam(Double_t p0, Double_t p1, Double_t p2, Double_t p3, Double_t p4);
46 virtual Bool_t IsSelected(TObject *object);
47 virtual void Print(const Option_t *option = "") const;
51 Bool_t fRejectOutside; // choose if tracks outside momentum range are rejected or not
52 Double_t fMomMin; // min p in range where this cut is checked
53 Double_t fMomMax; // max p in range where this cut is checked
54 EPARTYPE fRefType; // particle type for which PID is checked
55 AliESDpid *fESDpid; //! ESD PID object
56 AliAODpidUtil *fAODpid; //! AOD PID object
57 Double_t fBB[5]; // Bethe-Bloch parameters
60 ClassDef(AliRsnCutPIDTPC, 1)