AliPhysics  29d4213 (29d4213)
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros
AliRDHFCutsLctoV0.h
Go to the documentation of this file.
1 #ifndef ALIRDHFCUTSLCTOV0_H
2 #define ALIRDHFCUTSLCTOV0_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 //***********************************************************
11 //***********************************************************
12 
13 #include "AliRDHFCuts.h"
14 
16 {
17  public:
18 
20  kLcToK0Spr=0x0001,
21  kLcToLBarpi=0x0002,
22  kLcToLpi=0x0004
23  };
24 
36  };
37 
38  AliRDHFCutsLctoV0(const char* name="CutsLctoV0", Short_t v0channel=0);
39 
40  virtual ~AliRDHFCutsLctoV0();
41 
42  AliRDHFCutsLctoV0(const AliRDHFCutsLctoV0& source);
44 
46  virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);
47 
49  virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
50 
52  virtual Int_t IsSelectedPID(AliAODRecoDecayHF* obj);
53 
54  Int_t IsSelectedSingleCut(TObject* obj, Int_t selectionLevel, Int_t cutIndex);
55 
56  Int_t CombineCuts (Int_t returnvalueTrack, Int_t returnvalue, Int_t returnvaluePID) const;
57 
58  Float_t GetMassCut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(0,iPtBin)] : 1.e6);}
59  Float_t GetDCACut(Int_t iPtBin=0) const { return (GetCuts() ? fCutsRD[GetGlobalIndex(7,iPtBin)] : 1.e6);}
60 
63 
65 
66  Int_t GetV0Type();
67 
68  void SetHighPtCut(Float_t highPtCut) {fHighPtCut=highPtCut;};
69  Float_t GetHighPtCut() const {return fHighPtCut;};
70 
71  void SetLowPtCut(Float_t lowPtCut) {fLowPtCut=lowPtCut;};
72  Float_t GetLowPtCut() const {return fLowPtCut;};
73 
74  void SetMinCombinedProbability(Int_t ptBins, Float_t *ptMin);
76 
77  void SetExcludedCut(Int_t excludedCut) {fExcludedCut=excludedCut;}
78  Int_t GetExcludedCut(){return fExcludedCut;}
79 
80  virtual void SetStandardCutsPP2010();
81  virtual void SetStandardCutsPbPb2010();
82  virtual void SetStandardCutsPbPb2011();
83 
84  virtual Bool_t IsInFiducialAcceptance(Double_t pt,Double_t y) const;
85 
86  void AddTrackCutsV0daughters(AliESDtrackCuts* v0daug)
87  { delete fV0daughtersCuts; fV0daughtersCuts = new AliESDtrackCuts(*v0daug); }
88  virtual AliESDtrackCuts *GetTrackCutsV0daughters() const {return fV0daughtersCuts;}
89 
90  virtual void PrintAll() const;
91  protected:
92 
93  void CheckPID(Int_t candPtBin, AliAODTrack *bachelor, AliAODTrack * /*v0Neg*/, AliAODTrack * /*v0Pos*/,
94  Bool_t &isBachelorID1, Bool_t &isBachelorID2, Bool_t &isBachelorID4);
95 
96  private:
97 
99  AliESDtrackCuts *fV0daughtersCuts;
100  Float_t fV0Type;
101  Float_t fHighPtCut;
102  Float_t fLowPtCut;
103  Int_t fExcludedCut;
104  Float_t *fMinCombinedProbability; //[fnPtBins] min value for combined PID probabilities
105 
106  //UShort_t fV0channel;
107 
109  ClassDef(AliRDHFCutsLctoV0,7);
110 };
112 
113 #endif
Int_t IsSelectedSingleCut(TObject *obj, Int_t selectionLevel, Int_t cutIndex)
AliESDtrackCuts * fV0daughtersCuts
virtual void SetStandardCutsPbPb2010()
virtual Int_t IsSelected(TObject *obj, Int_t selectionLevel)
virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d, Float_t *vars, Int_t nvars, Int_t *pdgdaughters)=0
const Float_t * GetMinCombinedProbability()
AliRDHFCutsLctoV0(const char *name="CutsLctoV0", Short_t v0channel=0)
virtual void SetStandardCutsPP2010()
virtual void SetStandardCutsPbPb2011()
Int_t CombineCuts(Int_t returnvalueTrack, Int_t returnvalue, Int_t returnvaluePID) const
Float_t * fMinCombinedProbability
cut to be excluded (-1=none)
Float_t GetHighPtCut() const
const Float_t * GetCuts() const
Definition: AliRDHFCuts.h:238
Float_t fV0Type
cuts for v0 daughters (AOD converted to ESD on the flight!)
Bool_t AreLctoV0DaughtersSelected(AliAODRecoDecayHF *rd) const
AliRDHFCutsLctoV0 & operator=(const AliRDHFCutsLctoV0 &source)
Double_t ptMin
virtual Int_t IsSelectedPID(AliAODRecoDecayHF *)
Definition: AliRDHFCuts.h:280
virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d, Float_t *vars, Int_t nvars, Int_t *pdgdaughters)
void SetExcludedCut(Int_t excludedCut)
Float_t GetMassCut(Int_t iPtBin=0) const
void AddTrackCutsV0daughters(AliESDtrackCuts *v0daug)
Float_t fLowPtCut
high pT cut separation for proton identification
virtual void PrintAll() const
Float_t GetDCACut(Int_t iPtBin=0) const
Float_t * fCutsRD
fnVars*fnPtBins
Definition: AliRDHFCuts.h:386
Float_t GetLowPtCut() const
void SetLowPtCut(Float_t lowPtCut)
virtual AliESDtrackCuts * GetTrackCutsV0daughters() const
void SetMinCombinedProbability(Int_t ptBins, Float_t *ptMin)
void CheckPID(Int_t candPtBin, AliAODTrack *bachelor, AliAODTrack *, AliAODTrack *, Bool_t &isBachelorID1, Bool_t &isBachelorID2, Bool_t &isBachelorID4)
Int_t fExcludedCut
low pT cut separation for proton identification
Bool_t IsSelected(TObject *obj)
Definition: AliRDHFCuts.h:273
Float_t fHighPtCut
V0 type – should be defined as in AliRDHFCuts.h.
virtual Bool_t IsInFiducialAcceptance(Double_t pt, Double_t y) const
Int_t GetGlobalIndex(Int_t iVar, Int_t iPtBin) const
void SetPidSelectionFlag(Int_t a)
void SetHighPtCut(Float_t highPtCut)
virtual Int_t IsSelectedPID(AliAODRecoDecayHF *obj)