Coverity
[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 #include "AliAODPidHF.h"
20 class AliRDHFCutsDplustoKpipi : public AliRDHFCuts 
21 {
22  public:
23
24   AliRDHFCutsDplustoKpipi(const char* name="CutsDplustoKpipi");
25   
26   virtual ~AliRDHFCutsDplustoKpipi(){};
27   AliRDHFCutsDplustoKpipi(const AliRDHFCutsDplustoKpipi& source);
28   AliRDHFCutsDplustoKpipi& operator=(const AliRDHFCutsDplustoKpipi& source); 
29
30   using AliRDHFCuts::GetCutVarsForOpt;
31   virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters){
32     return GetCutVarsForOpt(d,vars,nvars,pdgdaughters,0x0);
33   }
34   virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters,AliAODEvent *aod);
35
36   using AliRDHFCuts::IsSelected;
37   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel){
38     return IsSelected(obj,selectionLevel,0x0);
39   }
40   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel,AliAODEvent* aod);
41   virtual Int_t IsSelectedPID(AliAODRecoDecayHF *rd);
42
43   virtual Bool_t IsInFiducialAcceptance(Double_t pt,Double_t y) const;
44   virtual void SetStandardCutsPP2010();
45   virtual void SetStandardCutsPbPb2010();
46
47   Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
48   Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);}
49   void SetUseStrongPid(Int_t spid){fUseStrongPid=spid;}
50   void SetMaxPtStrongPid(Float_t spid){fMaxPtStrongPid=spid;}
51   Int_t GetStrongPid() const {return fUseStrongPid;}
52   Float_t GetMaxPtStrongPid(){return fMaxPtStrongPid;}
53   void SetUseImpParProdCorrCut(Bool_t use){
54     fUseImpParProdCorrCut=use;
55   }
56   Bool_t GetUseImpParProdCorrCut() const {
57     return fUseImpParProdCorrCut;
58   }
59   
60  protected:
61
62  private:
63   Int_t fUseStrongPid; //use strong pid 0 no,1 only for K,2 both pi and K
64   Float_t fMaxPtStrongPid;//Maximum pt to apply strong Pid
65   Bool_t fUseImpParProdCorrCut; //switch for d0K*d0pi1 vs. d0K*d0pi2 cut
66
67   ClassDef(AliRDHFCutsDplustoKpipi,4);  // class for cuts on AOD reconstructed 
68                                    // D+->Kpipi
69 };
70
71 #endif