]>
Commit | Line | Data |
---|---|---|
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 | ||
15 | class 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 |