]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG3/vertexingHF/AliRDHFCutsDplustoKpipi.h
Updates to run with deltas (L. Cunqueiro)
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliRDHFCutsDplustoKpipi.h
1 #ifndef ALIRDHFCUTSDPLUSTOKPIPI_H
2 #define ALIRDHFCUTSDPLUSTOKPIPI_H
3 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */ 
7
8
9 /////////////////////////////////////////////////////////////
10 //
11 // Class for cuts on AOD reconstructed D+->Kpipi
12 //
13 // Author: R. Bala bala@to.infn.it
14 //         G. Ortona ortona@to.infn.it
15 /////////////////////////////////////////////////////////////
16
17
18 #include "AliRDHFCuts.h"
19 class AliAODPidHF;
20
21 class AliRDHFCutsDplustoKpipi : public AliRDHFCuts 
22 {
23  public:
24
25   AliRDHFCutsDplustoKpipi(const char* name="CutsDplustoKpipi");
26   
27   virtual ~AliRDHFCutsDplustoKpipi(){};
28   AliRDHFCutsDplustoKpipi(const AliRDHFCutsDplustoKpipi& source);
29   AliRDHFCutsDplustoKpipi& operator=(const AliRDHFCutsDplustoKpipi& source); 
30
31   using AliRDHFCuts::GetCutVarsForOpt;
32   virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters){
33     return GetCutVarsForOpt(d,vars,nvars,pdgdaughters,0x0);
34   }
35   virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters,AliAODEvent *aod);
36
37   using AliRDHFCuts::IsSelected;
38   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel){
39     return IsSelected(obj,selectionLevel,0x0);
40   }
41   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel,AliAODEvent* aod);
42   virtual Int_t IsSelectedPID(AliAODRecoDecayHF *rd);
43
44   virtual Bool_t IsInFiducialAcceptance(Double_t pt,Double_t y) const;
45   virtual void SetStandardCutsPP2010();
46   virtual void SetStandardCutsPbPb2010();
47
48   Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
49   Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}
50   void SetUseStrongPid(Int_t spid){fUseStrongPid=spid;}
51   void SetMaxPtStrongPid(Float_t spid){fMaxPtStrongPid=spid;}
52   void SetMaxPtStrongPidK(Float_t spid){fMaxPtStrongPidK=spid;}
53   void SetMaxPtStrongPidpi(Float_t spid){fMaxPtStrongPidpi=spid;}
54   Int_t GetStrongPid() const {return fUseStrongPid;}
55   Float_t GetMaxPtStrongPid() const {return fMaxPtStrongPid;}
56   Float_t GetMaxPtStrongPidK() const {return fMaxPtStrongPidK;}
57   Float_t GetMaxPtStrongPidpi() const {return fMaxPtStrongPidpi;}
58   void SetUseImpParProdCorrCut(Bool_t use){
59     fUseImpParProdCorrCut=use;
60   }
61   Bool_t GetUseImpParProdCorrCut() const {
62     return fUseImpParProdCorrCut;
63   }
64   
65  protected:
66
67  private:
68   Int_t fUseStrongPid; //use strong pid 0 no,1 only for K,2 pi 3 both
69   Float_t fMaxPtStrongPid;//Maximum pt of candidate to apply strong Pid
70   Float_t fMaxPtStrongPidK;//Maximum pt of track to apply strong Pid on K
71   Float_t fMaxPtStrongPidpi;//Maximum pt of track to apply strong Pid on pi
72   Bool_t fUseImpParProdCorrCut; //switch for d0K*d0pi1 vs. d0K*d0pi2 cut
73
74   ClassDef(AliRDHFCutsDplustoKpipi,5);  // class for cuts on AOD reconstructed 
75                                    // D+->Kpipi
76 };
77
78 #endif
79