67427ff7 |
1 | /*************************************************************************** |
2 | * |
3 | * $Id: |
4 | * |
5 | * Author: Mike Lisa, Ohio State, lisa@mps.ohio-state.edu |
6 | *************************************************************************** |
7 | * |
8 | * Description: part of STAR HBT Framework: AliFemtoMaker package |
9 | * a simple particle cut that selects on phasespace, #hits, DCA, and PID |
10 | * |
11 | *************************************************************************** |
12 | * |
13 | * $Log: |
14 | **************************************************************************/ |
15 | |
16 | #ifndef AliFemtoBasicTrackCut_hh |
17 | #define AliFemtoBasicTrackCut_hh |
18 | |
19 | //#ifndef StMaker_H |
20 | //#include "StMaker.h" |
21 | //#endif |
22 | |
23 | #include "Base/AliFemtoTrackCut.h" |
24 | |
25 | class AliFemtoBasicTrackCut : public AliFemtoTrackCut { |
26 | |
27 | public: |
28 | |
29 | AliFemtoBasicTrackCut(); |
30 | //~mikesTrackCut(); |
31 | |
32 | virtual bool Pass(const AliFemtoTrack*); |
33 | |
34 | virtual AliFemtoString Report(); |
35 | |
36 | |
37 | void SetNSigmaPion(const float& lo, const float& hi); |
38 | void SetNSigmaKaon(const float& lo, const float& hi); |
39 | void SetNSigmaProton(const float& lo, const float& hi); |
40 | |
41 | void SetNHits(const int& lo, const int& hi); |
42 | void SetPt(const float& lo, const float& hi); |
43 | void SetRapidity(const float& lo, const float& hi); |
44 | void SetDCA(const float& lo, const float& hi); |
45 | void SetCharge(const int&); |
46 | |
47 | |
48 | private: // here are the quantities I want to cut on... |
49 | |
50 | int fCharge; |
51 | float fNSigmaPion[2]; |
52 | float fNSigmaKaon[2]; |
53 | float fNSigmaProton[2]; |
54 | int fNHits[2]; |
55 | float fPt[2]; |
56 | float fRapidity[2]; |
57 | float fDCA[2]; |
58 | |
59 | long fNTracksPassed; |
60 | long fNTracksFailed; |
61 | |
62 | #ifdef __ROOT__ |
63 | ClassDef(AliFemtoBasicTrackCut, 1) |
64 | #endif |
65 | }; |
66 | |
67 | |
68 | inline void AliFemtoBasicTrackCut::SetNSigmaPion(const float& lo, const float& hi){fNSigmaPion[0]=lo; fNSigmaPion[1]=hi;} |
69 | inline void AliFemtoBasicTrackCut::SetNSigmaKaon(const float& lo, const float& hi){fNSigmaKaon[0]=lo; fNSigmaKaon[1]=hi;} |
70 | inline void AliFemtoBasicTrackCut::SetNSigmaProton(const float& lo, const float& hi){fNSigmaProton[0]=lo; fNSigmaProton[1]=hi;} |
71 | |
72 | inline void AliFemtoBasicTrackCut::SetNHits(const int& lo, const int& hi){fNHits[0]=lo;fNHits[1]=hi;} |
73 | inline void AliFemtoBasicTrackCut::SetPt(const float& lo, const float& hi){fPt[0]=lo; fPt[1]=hi;} |
74 | inline void AliFemtoBasicTrackCut::SetRapidity(const float& lo,const float& hi){fRapidity[0]=lo; fRapidity[1]=hi;} |
75 | inline void AliFemtoBasicTrackCut::SetDCA(const float& lo,const float& hi){fDCA[0]=lo; fDCA[1]=hi;} |
76 | inline void AliFemtoBasicTrackCut::SetCharge(const int& ch){fCharge = ch;} |
77 | |
78 | #endif |