1 #ifndef ALIRDHFCUTSDSTOKKPI_H
2 #define ALIRDHFCUTSDSTOKKPI_H
3 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //***********************************************************
9 // Class AliRDHFCutsDstoKKpi
10 // class for cuts on AOD reconstructed Ds->KKpi
11 // Author: A.Dainese, andrea.dainese@pd.infn.it
12 //***********************************************************
14 #include "AliRDHFCuts.h"
16 class AliRDHFCutsDstoKKpi : public AliRDHFCuts
20 AliRDHFCutsDstoKKpi(const char* name="CutsDstoKKpi");
22 virtual ~AliRDHFCutsDstoKKpi(){}
24 AliRDHFCutsDstoKKpi(const AliRDHFCutsDstoKKpi& source);
25 AliRDHFCutsDstoKKpi& operator=(const AliRDHFCutsDstoKKpi& source);
27 using AliRDHFCuts::GetCutVarsForOpt;
28 virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters){
29 return GetCutVarsForOpt(d,vars,nvars,pdgdaughters,0x0);
31 virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters,AliAODEvent *aod);
33 using AliRDHFCuts::IsSelected;
34 virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel){
35 return IsSelected(obj,selectionLevel,0x0);
37 virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel,AliAODEvent* aod);
40 virtual Int_t IsSelectedPID(AliAODRecoDecayHF *rd);
41 virtual void SetStandardCutsPP2010();
43 virtual Bool_t IsInFiducialAcceptance(Double_t pt,Double_t y) const;
44 Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
45 Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(11,iPtBin)] : 1.e6);}
46 UInt_t GetPIDTrackTPCTOFBitMap(AliAODTrack *track) const;
49 enum TrackPIDBit{kTPCPionLess1,kTPCPionMore1Less2,kTPCPionMore2Less3,kTPCPionMore3,
50 kTPCKaonLess1,kTPCKaonMore1Less2,kTPCKaonMore2Less3,kTPCKaonMore3,
51 kTPCProtonLess1,kTPCProtonMore1Less2,kTPCProtonMore2Less3,kTPCProtonMore3,
52 kTOFPionLess1,kTOFPionMore1Less2,kTOFPionMore2Less3,kTOFPionMore3,
53 kTOFKaonLess1,kTOFKaonMore1Less2,kTOFKaonMore2Less3,kTOFKaonMore3,
54 kTOFProtonLess1,kTOFProtonMore1Less2,kTOFProtonMore2Less3,kTOFProtonMore3};
57 enum EDsPid {kConservative, kStrong, kStrongPDep};
58 void SetPidOption(Int_t opt){
61 void SetMaxPtStrongPid(Float_t spid){fMaxPtStrongPid=spid;}
62 void SetMaxPStrongPidK(Float_t spid){fMaxPStrongPidK=spid;}
63 void SetMaxPStrongPidpi(Float_t spid){fMaxPStrongPidpi=spid;}
65 Int_t GetPidOption() const {return fPidOption;}
69 Int_t fPidOption; //pid option
70 Float_t fMaxPtStrongPid;//Maximum pt of candidate to apply strong Pid p dependent
71 Float_t fMaxPStrongPidK;//Maximum P of track to apply strong Pid on K
72 Float_t fMaxPStrongPidpi;//Maximum P of track to apply strong Pid on pi
74 ClassDef(AliRDHFCutsDstoKKpi,3); // class for cuts on AOD reconstructed Ds->KKpi