]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/vertexingHF/AliRDHFCutsXicPlustoXiPiPifromAODtracks.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGHF / vertexingHF / AliRDHFCutsXicPlustoXiPiPifromAODtracks.h
CommitLineData
b5c5bbb6 1#ifndef ALIRDHFCUTSXICPLUSTOXIPIPIFROMAODTRACKS_H
2#define ALIRDHFCUTSXICPLUSTOXIPIPIFROMAODTRACKS_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// Class AliRDHFCutsXictoPLUSXiPiPifromAODtracks
10// class for cuts on AOD reconstructed Xic-> pi Xi pi
11//***********************************************************
12
13#include "AliRDHFCuts.h"
14
15class AliRDHFCutsXicPlustoXiPiPifromAODtracks : public AliRDHFCuts
16{
17 public:
18
19 enum EPIDStrategy{
20 kNSigmaCuts,
21 kCombinedCuts
22 };
23
24 AliRDHFCutsXicPlustoXiPiPifromAODtracks(const char* name="CutsXicPlustoXiPiPi");
25 virtual ~AliRDHFCutsXicPlustoXiPiPifromAODtracks();
26 AliRDHFCutsXicPlustoXiPiPifromAODtracks(const AliRDHFCutsXicPlustoXiPiPifromAODtracks& source);
27 AliRDHFCutsXicPlustoXiPiPifromAODtracks& operator=(const AliRDHFCutsXicPlustoXiPiPifromAODtracks& source);
28
29 using AliRDHFCuts::GetCutVarsForOpt;
30 virtual void GetCutVarsForOpt(AliAODRecoDecayHF *d,Float_t *vars,Int_t nvars,Int_t *pdgdaughters);
31
32 using AliRDHFCuts::IsSelected;
33 virtual Int_t IsSelected(TObject* obj,Int_t selectionLevel);
34 using AliRDHFCuts::IsSelectedPID;
35 virtual Int_t IsSelectedPID(AliAODRecoDecayHF* obj);
36 Int_t IsSelectedCombinedPID(AliAODRecoDecayHF* obj);
37 Double_t GetPionProbabilityTPCTOF(AliAODTrack *trk);
38
39 void SetPIDStrategy(EPIDStrategy pidStrategy){fPIDStrategy=pidStrategy;}
40 EPIDStrategy GetPIDStrategy() const {return fPIDStrategy;}
41 void SetCombinedPIDThreshold(Double_t a){fCombinedPIDThreshold=a;}
42 Double_t GetCombinedPIDThreshold(){return fCombinedPIDThreshold;}
43
44
45 Bool_t SingleTrkCuts(AliAODTrack *trk);
46 Bool_t SingleCascadeCuts(AliAODcascade *casc);
47 Bool_t SelectWithRoughCuts(AliAODcascade *casc, AliAODTrack *trk1, AliAODTrack *trk2);
48
49 void SetProdTrackPtMin(Double_t a){fProdTrackPtMin=a;}
50 void SetProdTrackEtaRange(Double_t a){fProdTrackEtaRange=a;}
51 void SetProdUseAODFilterBit(Bool_t a){fProdUseAODFilterBit=a;}
52 void SetProdMassTolLambda(Double_t a){fProdMassTolLambda=a;}
53 void SetProdMassTolXi(Double_t a){fProdMassTolXi=a;}
54 void SetProdRfidMinV0(Double_t a){fProdRfidMinV0=a;}
55 void SetProdRfidMaxV0(Double_t a){fProdRfidMaxV0=a;}
56 void SetProdRfidMinXi(Double_t a){fProdRfidMinXi=a;}
57 void SetProdRfidMaxXi(Double_t a){fProdRfidMaxXi=a;}
58 void SetProdRoughMassTol(Double_t a){fProdRoughMassTol=a;}
59 void SetProdRoughPtMin(Double_t a){fProdRoughPtMin=a;}
60 void SetProdLikeSignDcaMax(Double_t a){fProdLikeSignDcaMax=a;}
61
62 Double_t GetProdTrackPtMin(){return fProdTrackPtMin;}
63 Double_t GetProdTrackEtaRange(){return fProdTrackEtaRange;}
64 Bool_t GetProdUseAODFilterBit(){return fProdUseAODFilterBit;}
65 Double_t GetProdMassTolLambda(){return fProdMassTolLambda;}
66 Double_t GetProdMassTolXi(){return fProdMassTolXi;}
67 Double_t GetProdRfidMinV0(){return fProdRfidMinV0;}
68 Double_t GetProdRfidMaxV0(){return fProdRfidMaxV0;}
69 Double_t GetProdRfidMinXi(){return fProdRfidMinXi;}
70 Double_t GetProdRfidMaxXi(){return fProdRfidMaxXi;}
71 Double_t GetProdRoughMassTol(){return fProdRoughMassTol;}
72 Double_t GetProdRoughPtMin(){return fProdRoughPtMin;}
73 Double_t GetProdLikeSignDcaMax(){return fProdLikeSignDcaMax;}
74
75 void SetNCuts(Int_t ncuts){fnCuts=ncuts;}
76 Int_t GetNCutsArray(){return fnCuts;}
77 void SetCutsArray(Int_t nCuts, Int_t nVars,Int_t nPtBins,Float_t ***cutsRD);
78 void SetCutsArray(Int_t nTotBins,Float_t *cutsRD);
79 void SetCutsFromArray(Int_t nCuts);
80 Int_t GetCutArrayID(Int_t ic,Int_t iv,Int_t ip);
81
82 protected:
83
84 private:
85
86 EPIDStrategy fPIDStrategy; //PID Strategy
87 Double_t fCombinedPIDThreshold; //PID threshold used in IsSelectedCombinedPID
88
89 Double_t fProdTrackPtMin; //Minimum Bachelor pT
90 Double_t fProdTrackEtaRange; //Bachelor Eta range
91 Bool_t fProdUseAODFilterBit; //Use AODfilterBit or not
92 Double_t fProdMassTolLambda; //Tolerance of Lambda mass from PDG value
93 Double_t fProdMassTolXi; //Tolerance of Xi mass from PDG value
94 Double_t fProdRfidMinV0; //Minimum Decay vertex of V0
95 Double_t fProdRfidMaxV0; //Max Decay vertex of V0
96 Double_t fProdRfidMinXi; //Minimum Decay vertex of Xi
97 Double_t fProdRfidMaxXi; //Max Decay vertex of Xi
98 Double_t fProdLikeSignDcaMax; //Maximum DCA of pions
99 Double_t fProdRoughMassTol; //Tolerance of Xic mass from PDG value
100 Double_t fProdRoughPtMin; //Minimum pT of Xic
101
102 Int_t fnCuts; //Number of Cuts
103 Int_t fnTotalCutBins; //fnCuts * fnvars * fnPtBins
104 Float_t *fCutsArray; //[fnTotalCutBins]
105
106 ClassDef(AliRDHFCutsXicPlustoXiPiPifromAODtracks,1);
107};
108
109#endif