StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mercedesStarStandardEventCut.h
1 /***************************************************************************
2  *
3  * $Id: mercedesStarStandardEventCut.h,v 1.2 2003/09/02 17:58:21 perev Exp $
4  *
5  * Author: Mercedes Lopez Noriega , Ohio State, mercedes@pacific.mps.ohio-state.edu
6  *
7  ***************************************************************************
8  *
9  * Description:part of STAR HBT Framework: StHbtMaker package
10  * A event-wise cut taht cuts on multiplicity ("new" STAR standard multipliity
11  * definition for charge hadrons, 2001 data) and:
12  * primary tracks only
13  * flag > 0
14  * fit points >= 10
15  * abs(eta) < 0.5
16  * dca < 3 cm
17  *
18  ***************************************************************************
19  *
20  * $Log: mercedesStarStandardEventCut.h,v $
21  * Revision 1.2 2003/09/02 17:58:21 perev
22  * gcc 3.2 updates + WarnOff
23  *
24  * Revision 1.1 2002/02/22 15:50:01 mercedes
25  * added StarStandard multiplicity cut for charge hadrons (2001 data)
26  *
27  * Revision 1.1 2002/02/22 16:27:15 mercedes
28  * added StarStandard multiplicity cut for charge hadrons
29  *
30  **************************************************************************/
31 
32 
33 #ifndef mercedesStarStandardEventCut_hh
34 #define mercedesStarStandardEventCut_hh
35 
36 #include "StHbtMaker/Base/StHbtEventCut.h"
37 #ifdef HPUX
38 #include "Stiostream.h"
39 #else
40 #include <fstream>
41 #endif
42 
44 
45 public:
46 
49  // ~mercedesStarStandardEventCut();
50 
51  void SetEventMult(const int& lo,const int& hi);
52  void SetVertZPos(const float& lo, const float& hi);
53  int NEventsPassed();
54  int NEventsFailed();
55 
56  virtual StHbtString Report();
57  virtual bool Pass(const StHbtEvent*);
58 
60 
61 private: // here are the quantities I want to cut on...
62 
63  int mEventMult[2]; // range of multiplicity
64  float mVertZPos[2]; // range of z-position of vertex
65 
66  long mNEventsPassed;
67  long mNEventsFailed;
68 
69  ofstream* mOutFile;
70 
71 #ifdef __ROOT__
72  ClassDef(mercedesStarStandardEventCut, 0)
73 #endif
74 
75 };
76 
77 inline void mercedesStarStandardEventCut::SetEventMult(const int& lo, const int& hi){mEventMult[0]=lo; mEventMult[1]=hi;}
78 inline void mercedesStarStandardEventCut::SetVertZPos(const float& lo, const float& hi){mVertZPos[0]=lo; mVertZPos[1]=hi;}
79 inline int mercedesStarStandardEventCut::NEventsPassed() {return mNEventsPassed;}
80 inline int mercedesStarStandardEventCut::NEventsFailed() {return mNEventsFailed;}
81 inline mercedesStarStandardEventCut* mercedesStarStandardEventCut::Clone() { mercedesStarStandardEventCut* c = new mercedesStarStandardEventCut(*this); return c;}
82 inline mercedesStarStandardEventCut::mercedesStarStandardEventCut(mercedesStarStandardEventCut& c) : StHbtEventCut(c) {
83  mEventMult[0] = c.mEventMult[0];
84  mEventMult[1] = c.mEventMult[1];
85  mVertZPos[0] = c.mVertZPos[0];
86  mVertZPos[1] = c.mVertZPos[1];
87  mNEventsPassed = 0;
88  mNEventsFailed = 0;
89 }
90 
91 #endif