Making the directory structure of AliFemto flat. All files go into one common directory
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemtoUser / AliFemtoESDTrackCut.h
1 /***************************************************************************
2  *
3  * $Id$
4  *
5  * 
6  ***************************************************************************
7  *
8  * 
9  *              
10  *
11  ***************************************************************************
12  *
13  * $Log$
14  * Revision 1.1.1.1  2007/04/25 15:38:41  panos
15  * Importing the HBT code dir
16  *
17  * Revision 1.4  2007/03/20 09:37:13  mchojnacki
18  * *** empty log message ***
19  *
20  * Revision 1.3  2007/03/13 15:30:03  mchojnacki
21  * adding reader for simulated data
22  *
23  * Revision 1.2  2007/03/08 14:58:03  mchojnacki
24  * adding some alice stuff
25  *
26  * Revision 1.1.1.1  2007/03/07 10:14:49  mchojnacki
27  * First version on CVS
28  *
29  **************************************************************************/
30
31 #ifndef AliFemtoESDTrackCut_hh
32 #define AliFemtoESDTrackCut_hh
33
34 //#ifndef StMaker_H
35 //#include "StMaker.h"
36 //#endif
37
38 #include "AliFemtoTrackCut.h"
39
40 class AliFemtoESDTrackCut : public AliFemtoTrackCut 
41 {
42
43     public:
44            AliFemtoESDTrackCut();
45            //~AliFemtoESDTrackCut();
46
47            virtual bool Pass(const AliFemtoTrack*);
48
49            virtual AliFemtoString Report();
50
51            void SetPt(const float& lo, const float& hi);
52            void SetRapidity(const float& lo, const float& hi);
53            void SetCharge(const int&);
54            void SetPidProbElectron(const float& lo, const float& hi);
55            void SetPidProbPion(const float& lo, const float& hi);
56            void SetPidProbKaon(const float& lo, const float& hi);
57            void SetPidProbProton(const float& lo, const float& hi);
58            void SetPidProbMuon(const float& lo, const float& hi);
59            void SetLabel(const bool& flag);
60            void SetStatus(const long& );
61            void SetminTPCclsF(const short& );
62            void SetminITScls(const int& );
63   
64            private:   // here are the quantities I want to cut on...
65
66            int               fCharge;
67            float             fPt[2];
68            float             fRapidity[2];
69            float             fPidProbElectron[2]; // new
70            float             fPidProbPion[2]; // new
71            float             fPidProbKaon[2]; // new
72            float             fPidProbProton[2]; // new
73            float             fPidProbMuon[2]; //new 
74            bool              fLabel;//if true label<0 will not pass throught 
75            long              fStatus;//staus flag
76            short             fminTPCclsF;//min number of findable clusters in the TPC
77            int               fminITScls;//min number of clusters assigned in the ITS 
78            long              fNTracksPassed;
79            long              fNTracksFailed;
80
81 #ifdef __ROOT__ 
82   ClassDef(AliFemtoESDTrackCut, 1)
83 #endif
84 };
85
86
87 inline void AliFemtoESDTrackCut::SetPt(const float& lo, const float& hi){fPt[0]=lo; fPt[1]=hi;}
88 inline void AliFemtoESDTrackCut::SetRapidity(const float& lo,const float& hi){fRapidity[0]=lo; fRapidity[1]=hi;}
89 inline void AliFemtoESDTrackCut::SetCharge(const int& ch){fCharge = ch;}
90 inline void AliFemtoESDTrackCut::SetPidProbElectron(const float& lo,const float& hi){fPidProbElectron[0]=lo; fPidProbElectron[1]=hi;}
91 inline void AliFemtoESDTrackCut::SetPidProbPion(const float& lo,const float& hi){fPidProbPion[0]=lo; fPidProbPion[1]=hi;}
92 inline void AliFemtoESDTrackCut::SetPidProbKaon(const float& lo,const float& hi){fPidProbKaon[0]=lo; fPidProbKaon[1]=hi;}
93 inline void AliFemtoESDTrackCut::SetPidProbProton(const float& lo,const float& hi){fPidProbProton[0]=lo; fPidProbProton[1]=hi;}
94 inline void AliFemtoESDTrackCut::SetPidProbMuon(const float& lo,const float& hi){fPidProbMuon[0]=lo; fPidProbMuon[1]=hi;}
95 inline void AliFemtoESDTrackCut::SetLabel(const bool& flag){fLabel=flag;}
96 inline void AliFemtoESDTrackCut::SetStatus(const long& status){fStatus=status;}
97 inline void AliFemtoESDTrackCut::SetminTPCclsF(const short& minTPCclsF){fminTPCclsF=minTPCclsF;}
98 inline void AliFemtoESDTrackCut::SetminITScls(const int& minITScls){fminITScls=minITScls;}
99
100 #endif
101