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 event-wise cut that selects on multiplicity and z-position |
10 | * of primary vertex |
11 | * |
12 | *************************************************************************** |
13 | * |
14 | * $Log$ |
0215f606 |
15 | * Revision 1.1.1.1 2007/04/25 15:38:41 panos |
16 | * Importing the HBT code dir |
17 | * |
67427ff7 |
18 | * Revision 1.1.1.1 2007/03/07 10:14:49 mchojnacki |
19 | * First version on CVS |
20 | * |
21 | * Revision 1.5 2000/03/23 22:57:28 laue |
22 | * Clone() function implemented |
23 | * |
24 | * Revision 1.4 2000/01/25 17:35:02 laue |
25 | * I. In order to run the stand alone version of the AliFemtoMaker the following |
26 | * changes have been done: |
27 | * a) all ClassDefs and ClassImps have been put into #ifdef __ROOT__ statements |
28 | * b) unnecessary includes of StMaker.h have been removed |
29 | * c) the subdirectory AliFemtoMaker/doc/Make has been created including everything |
30 | * needed for the stand alone version |
31 | * |
32 | * II. To reduce the amount of compiler warning |
33 | * a) some variables have been type casted |
34 | * b) some destructors have been declared as virtual |
35 | * |
36 | * Revision 1.3 1999/10/15 01:57:04 lisa |
37 | * Important enhancement of AliFemtoMaker - implement Franks CutMonitors |
38 | * ---------------------------------------------------------- |
39 | * This means 3 new files in Infrastructure area (CutMonitor), |
40 | * several specific CutMonitor classes in the Cut area |
41 | * and a new base class in the Base area (AliFemtoCutMonitor). |
42 | * This means also changing all Cut Base class header files from .h to .h |
43 | * so we have access to CutMonitor methods from Cint command line. |
44 | * This last means |
45 | * 1) files which include these header files are slightly modified |
46 | * 2) a side benefit: the TrackCuts and V0Cuts no longer need |
47 | * a SetMass() implementation in each Cut class, which was stupid. |
48 | * Also: |
49 | * ----- |
50 | * Include Franks AliFemtoAssociationReader |
51 | * ** None of these changes should affect any user ** |
52 | * |
53 | * Revision 1.2 1999/07/06 22:33:21 lisa |
54 | * Adjusted all to work in pro and new - dev itself is broken |
55 | * |
56 | * Revision 1.1.1.1 1999/06/29 16:02:56 lisa |
57 | * Installation of AliFemtoMaker |
58 | * |
59 | **************************************************************************/ |
60 | |
61 | #ifndef AliFemtoBasicEventCut_hh |
62 | #define AliFemtoBasicEventCut_hh |
63 | |
64 | // do I need these lines ? |
65 | //#ifndef StMaker_H |
66 | //#include "StMaker.h" |
67 | //#endif |
68 | |
69 | #include "Base/AliFemtoEventCut.h" |
70 | |
71 | class AliFemtoBasicEventCut : public AliFemtoEventCut { |
72 | |
73 | public: |
74 | |
75 | AliFemtoBasicEventCut(); |
76 | AliFemtoBasicEventCut(AliFemtoBasicEventCut&); |
77 | //~AliFemtoBasicEventCut(); |
78 | |
79 | void SetEventMult(const int& lo,const int& hi); |
80 | void SetVertZPos(const float& lo, const float& hi); |
81 | int NEventsPassed(); |
82 | int NEventsFailed(); |
83 | |
84 | virtual AliFemtoString Report(); |
85 | virtual bool Pass(const AliFemtoEvent*); |
86 | |
87 | AliFemtoBasicEventCut* Clone(); |
88 | |
89 | private: // here are the quantities I want to cut on... |
90 | |
91 | int fEventMult[2]; // range of multiplicity |
92 | float fVertZPos[2]; // range of z-position of vertex |
93 | |
94 | long fNEventsPassed; |
95 | long fNEventsFailed; |
96 | |
97 | #ifdef __ROOT__ |
98 | ClassDef(AliFemtoBasicEventCut, 1) |
99 | #endif |
100 | |
101 | }; |
102 | |
103 | inline void AliFemtoBasicEventCut::SetEventMult(const int& lo, const int& hi){fEventMult[0]=lo; fEventMult[1]=hi;} |
104 | inline void AliFemtoBasicEventCut::SetVertZPos(const float& lo, const float& hi){fVertZPos[0]=lo; fVertZPos[1]=hi;} |
105 | inline int AliFemtoBasicEventCut::NEventsPassed() {return fNEventsPassed;} |
106 | inline int AliFemtoBasicEventCut::NEventsFailed() {return fNEventsFailed;} |
107 | inline AliFemtoBasicEventCut* AliFemtoBasicEventCut::Clone() { AliFemtoBasicEventCut* c = new AliFemtoBasicEventCut(*this); return c;} |
0215f606 |
108 | inline AliFemtoBasicEventCut::AliFemtoBasicEventCut(AliFemtoBasicEventCut& c) : AliFemtoEventCut(c), fNEventsPassed(0), fNEventsFailed(0) { |
67427ff7 |
109 | fEventMult[0] = c.fEventMult[0]; |
110 | fEventMult[1] = c.fEventMult[1]; |
111 | fVertZPos[0] = c.fVertZPos[0]; |
112 | fVertZPos[1] = c.fVertZPos[1]; |
67427ff7 |
113 | } |
114 | |
115 | |
116 | #endif |