]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FEMTOSCOPY/AliFemto/AliFemtoBasicTrackCut.h
Making the directory structure of AliFemto flat. All files go into one common directory
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliFemtoBasicTrackCut.h
1 ////////////////////////////////////////////////////////////////////////////////
2 //                                                                            //
3 // AliFemtoBasicTrackCut - the basic cut for tracks.                          //
4 // Cuts on particle identification, transverse momentum, rapidity, distance   //
5 // of closest approach to primary vertex and charge                           //
6 //                                                                            //
7 ////////////////////////////////////////////////////////////////////////////////
8
9 #ifndef AliFemtoBasicTrackCut_hh
10 #define AliFemtoBasicTrackCut_hh
11
12 //#ifndef StMaker_H
13 //#include "StMaker.h"
14 //#endif
15
16 #include "AliFemtoTrackCut.h"
17
18 class AliFemtoBasicTrackCut : public AliFemtoTrackCut {
19
20 public:
21
22   AliFemtoBasicTrackCut();
23   //~mikesTrackCut();
24
25   virtual bool Pass(const AliFemtoTrack*);
26
27   virtual AliFemtoString Report();
28
29
30   void SetNSigmaPion(const float& lo, const float& hi);
31   void SetNSigmaKaon(const float& lo, const float& hi);
32   void SetNSigmaProton(const float& lo, const float& hi);
33
34   void SetNHits(const int& lo, const int& hi);
35   void SetPt(const float& lo, const float& hi);
36   void SetRapidity(const float& lo, const float& hi);
37   void SetDCA(const float& lo, const float& hi);
38   void SetCharge(const int&);
39
40
41 private:   // here are the quantities I want to cut on...
42
43   int               fCharge;
44   float             fNSigmaPion[2];
45   float             fNSigmaKaon[2];
46   float             fNSigmaProton[2];
47   int               fNHits[2];
48   float             fPt[2];
49   float             fRapidity[2];
50   float             fDCA[2];
51
52   long              fNTracksPassed;
53   long              fNTracksFailed;
54
55 #ifdef __ROOT__ 
56   ClassDef(AliFemtoBasicTrackCut, 1)
57 #endif
58 };
59
60
61 inline void AliFemtoBasicTrackCut::SetNSigmaPion(const float& lo, const float& hi){fNSigmaPion[0]=lo; fNSigmaPion[1]=hi;}
62 inline void AliFemtoBasicTrackCut::SetNSigmaKaon(const float& lo, const float& hi){fNSigmaKaon[0]=lo; fNSigmaKaon[1]=hi;}
63 inline void AliFemtoBasicTrackCut::SetNSigmaProton(const float& lo, const float& hi){fNSigmaProton[0]=lo; fNSigmaProton[1]=hi;}
64
65 inline void AliFemtoBasicTrackCut::SetNHits(const int& lo, const int& hi){fNHits[0]=lo;fNHits[1]=hi;}
66 inline void AliFemtoBasicTrackCut::SetPt(const float& lo, const float& hi){fPt[0]=lo; fPt[1]=hi;}
67 inline void AliFemtoBasicTrackCut::SetRapidity(const float& lo,const float& hi){fRapidity[0]=lo; fRapidity[1]=hi;}
68 inline void AliFemtoBasicTrackCut::SetDCA(const float& lo,const float& hi){fDCA[0]=lo; fDCA[1]=hi;}
69 inline void AliFemtoBasicTrackCut::SetCharge(const int& ch){fCharge = ch;}
70
71 #endif