Updates in PbPb cuts (Andrea Rossi)
[u/mrichter/AliRoot.git] / PWG3 / vertexingHF / AliRDHFCutsDStartoKpipi.h
1 #ifndef ALIRDHFCUTSDSTARTOKPIPI_H
2 #define ALIRDHFCUTSDSTARTOKPIPI_H
3 /* Copyright(c) 1998-2010, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 //***********************************************************
7 // Class AliRDHFCutsDStartoKpipi
8 // class for cuts on AOD reconstructed DStar->Kpipi
9 // Author: A.Grelli, alessandro.grelli@uu.nl
10 // PID method implemented by   Y.Wang, yifei@physi.uni-heidelberg.de
11 //***********************************************************
12
13 #include "AliRDHFCuts.h"
14
15 class AliAODEvent;
16 class AliAODRecoCascadeHF;
17 class AliAODRecoDecayHF;
18
19 class AliRDHFCutsDStartoKpipi : public AliRDHFCuts 
20 {
21  public:
22
23   AliRDHFCutsDStartoKpipi(const char* name="CutsDStartoKpipi");
24   
25   virtual ~AliRDHFCutsDStartoKpipi(){}
26
27   AliRDHFCutsDStartoKpipi(const AliRDHFCutsDStartoKpipi& source);
28   AliRDHFCutsDStartoKpipi& operator=(const AliRDHFCutsDStartoKpipi& source); 
29  
30   using AliRDHFCuts::GetCutVarsForOpt;
31   virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);
32
33   using AliRDHFCuts::IsSelected;
34   virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
35   Int_t IsD0FromDStarSelected(Double_t pt, TObject* obj,Int_t selectionLevel) const; 
36   virtual Int_t IsSelectedPID(AliAODRecoDecayHF *rd);
37   virtual Int_t SelectPID(AliAODTrack *track, Int_t type);
38   virtual Bool_t IsInFiducialAcceptance(Double_t pt,Double_t y) const;
39   Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(9,iPtBin)] : 1.e6);} // for the Dstar
40   Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(1,iPtBin)] : 1.e6);} // for the D0
41   virtual void SetStandardCutsPP2010();
42   virtual void SetStandardCutsPbPb2010();  
43
44   void AddTrackCutsSoftPi(const AliESDtrackCuts *cuts) 
45      {fTrackCutsSoftPi=new AliESDtrackCuts(*cuts); return;}
46   virtual AliESDtrackCuts *GetTrackCutsSoftPi() const {return fTrackCutsSoftPi;}
47
48  protected:
49
50   AliESDtrackCuts *fTrackCutsSoftPi; // cuts for soft pion (AOD converted to ESD on the flight!)
51
52   ClassDef(AliRDHFCutsDStartoKpipi,4);  // class for cuts on AOD reconstructed D0->Kpipi
53 };
54
55 #endif