StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StZdcTriggerDetector.h
1 
5 /***************************************************************************
6  *
7  * $Id: StZdcTriggerDetector.h,v 2.11 2006/09/14 00:02:53 ullrich Exp $
8  *
9  * Author: Thomas Ullrich, Sep 1999
10  ***************************************************************************
11  *
12  * Description:
13  *
14  ***************************************************************************
15  *
16  * $Log: StZdcTriggerDetector.h,v $
17  * Revision 2.11 2006/09/14 00:02:53 ullrich
18  * Removed argument (run) in constructor. Not needed anymore.
19  *
20  * Revision 2.10 2006/08/21 19:43:35 ullrich
21  * Run number becomes constructor argument. Needed for ZDC. (Akio)
22  *
23  * Revision 2.9 2004/04/06 19:39:44 ullrich
24  * Added ZDC SMD support.
25  *
26  * Revision 2.8 2004/02/11 01:42:09 ullrich
27  * Added new constructor to load data from StTriggerData.
28  *
29  * Revision 2.7 2002/02/22 22:56:53 jeromel
30  * Doxygen basic documentation in all header files. None of this is required
31  * for QM production.
32  *
33  * Revision 2.6 2001/07/13 16:25:20 perev
34  * last static array fixed
35  *
36  * Revision 2.5 2001/07/12 22:58:33 ullrich
37  * Added variable to store the vertex_z from timing info.
38  *
39  * Revision 2.4 2001/04/05 04:00:47 ullrich
40  * Replaced all (U)Long_t by (U)Int_t and all redundant ROOT typedefs.
41  *
42  * Revision 2.3 2000/07/13 12:51:13 ullrich
43  * Added new method numberOfZdcWords to replace old one with wrong name.
44  *
45  * Revision 2.2 1999/12/20 12:54:48 ullrich
46  * Adapted changed in trigger table dst_TrgDet
47  *
48  * Revision 2.1 1999/10/13 19:44:22 ullrich
49  * Initial Revision
50  *
51  **************************************************************************/
52 #ifndef StZdcTriggerDetector_hh
53 #define StZdcTriggerDetector_hh
54 #include "StObject.h"
55 #include "StEnumerations.h"
56 
57 class dst_TrgDet_st;
58 class StTriggerData;
59 
61 public:
63  StZdcTriggerDetector(const dst_TrgDet_st&);
65  // StZdcTriggerDetector(const StZdcTriggerDetector&); use default
66  // StZdcTriggerDetector& operator=(const StZdcTriggerDetector&); use default
67  virtual ~StZdcTriggerDetector();
68 
69  float adcSum(StBeamDirection) const;
70  float adcSum() const;
71  unsigned int numberOfZdcWords() const;
72  float adc(unsigned int) const;
73  float tdc(unsigned int) const;
74  float vertexZ() const;
75  float zdcSmd(StBeamDirection eastwest, int verthori, int strip) const;
76 
77  void setAdc(unsigned int, float);
78  void setTdc(unsigned int, float);
79  void setAdcSum(StBeamDirection, float);
80  void setAdcSum(float);
81  void setVertexZ(float);
82  void setZdcSmd(StBeamDirection eastwest, int verthori, int strip, float val);
83 
84  unsigned int numberOfZdcCounters() const; // usage depreciated, to be removed soon
85 
86 protected:
87  enum {mMaxZdcWords = 16};
88  Float_t mAdc[mMaxZdcWords];
89  Float_t mTdc[mMaxZdcWords];
90  Float_t mSumAdc[2];
91  Float_t mSum;
92  Float_t mVertexZ;
93 
94  Float_t mZdcSmdEast[mMaxZdcWords];
95  Float_t mZdcSmdWest[mMaxZdcWords];
96 
97  ClassDef(StZdcTriggerDetector,3)
98 };
99 #endif