]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGLF/RESONANCES/AliRsnCutPion.h
fixing psi in MC from the header
[u/mrichter/AliRoot.git] / PWGLF / RESONANCES / AliRsnCutPion.h
CommitLineData
74722676 1#ifndef ALIRSNCUTPION_H
2#define ALIRSNCUTPION_H
3
4//
5// Cuts for selecting good pion candidates for rsn analysis
6// Applies track quality selection plus PID selection,
7// with different tolerance ranges depending on the momentum.
8//
9
10#include "AliVTrack.h"
11#include "AliRsnCut.h"
12#include "AliRsnCutTrackQuality.h"
13
14class AliRsnCutPion : public AliRsnCut {
15
16public:
61f275d1 17 enum ERsnPionCut {
18 kQualityStd2010,
19 kTOFMatchStd2010,
20 kFastTPCpidNsigma,
21 kFastTPCpid1point5sigma,
22 kFastTPCpid2sigma,
23 kFastTPCpid3sigma,
24 kFastTOFpidNsigma,
25 kFastTOFpid1point5sigma,
26 kFastTOFpid2sigma,
27 kFastTOFpid3sigma,
28 kTPCTOFpidDefaultKstarPP2010,
29 kNpionCuts
30 };
31
32 AliRsnCutPion(const char *name = "", AliRsnCutPion::ERsnPionCut cutID = AliRsnCutPion::kQualityStd2010, AliPID::EParticleType pid = AliPID::kPion);
33 virtual ~AliRsnCutPion() { }
34
35 void SetNoPID(Bool_t yn = kTRUE) {fNoPID = yn;}
36 AliRsnCutTrackQuality *CutQuality() {return &fCutQuality;}
37 Bool_t MatchTOF(const AliVTrack *vtrack);
38
39 Bool_t IsSelected(TObject *obj);
40
41 Bool_t IsSelectedByQualityStd2010(TObject *obj, Bool_t requireTPCin, Bool_t requireTPCrefit, Bool_t requireITSrefit );
42 Bool_t IsSelectedByTOFMatchStd2010(TObject *obj);
43
44 Bool_t IsSelectedByFastTPCpidNsigma(TObject *obj,Float_t nSigmaCut);
45 Bool_t IsSelectedByFastTPCpid1point5sigma(TObject *obj) {return IsSelectedByFastTPCpidNsigma(obj, 1.5);}
46 Bool_t IsSelectedByFastTPCpid2sigma(TObject *obj) {return IsSelectedByFastTPCpidNsigma(obj, 2.0);}
47 Bool_t IsSelectedByFastTPCpid3sigma(TObject *obj) {return IsSelectedByFastTPCpidNsigma(obj, 3.0);}
48
49 Bool_t IsSelectedByFastTOFpidNsigma(TObject *obj,Float_t nSigmaCut);
50 Bool_t IsSelectedByFastTOFpid1point5sigma(TObject *obj) {return IsSelectedByFastTOFpidNsigma(obj, 1.5);}
51 Bool_t IsSelectedByFastTOFpid2sigma(TObject *obj) {return IsSelectedByFastTOFpidNsigma(obj, 2.0);}
52 Bool_t IsSelectedByFastTOFpid3sigma(TObject *obj) {return IsSelectedByFastTOFpidNsigma(obj, 3.0);}
53
54 Bool_t IsSelectedByTPCTOFpidDefaultKstarPP2010(TObject *obj);
55
56 //setters
57 void SetNsigmaCutTPC(Float_t nMaxSigmaCut=1E6) {fNsigmaCutTPC=nMaxSigmaCut; return;}
58 void SetNsigmaCutTOF(Float_t nMaxSigmaCut=1E6) {fNsigmaCutTOF=nMaxSigmaCut; return;}
59
60 //getters
61 const char *GetAppliedPionCutName() {if (fAppliedCutID>0) { return fgkCutName[fAppliedCutID];} else {return "none";}}
62 Int_t GetAppliedPionCutId() { return fAppliedCutID;}
63 const char *GetPionCutName(AliRsnCutPion::ERsnPionCut cutID) { return fgkCutName[cutID];}
64
65private:
66
67 Bool_t fNoPID; // flag to switch off PID check
68 AliPID::EParticleType fPID; // PID for track
69 AliRsnCutTrackQuality fCutQuality; // track quality cut
70 Int_t fAppliedCutID; // ID of applied cut
71 static const char *fgkCutName[kNpionCuts]; //array with cuts names
72 Float_t fNsigmaCutTPC; // max sigma for TPC dE/dx fast cut
73 Float_t fNsigmaCutTOF; // max sigma for TOF t-t0-t_exp fast cut
74
75 ClassDef(AliRsnCutPion,1) // cut definitions for K*
76
74722676 77};
78
79#endif