StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StVpdTriggerDetector.h
1 
5 /***************************************************************************
6  *
7  * $Id: StVpdTriggerDetector.h,v 2.5 2013/10/30 15:47:16 ullrich Exp $
8  *
9  * Author: Thomas Ullrich, Sep 1999
10  ***************************************************************************
11  *
12  * Description:
13  *
14  ***************************************************************************
15  *
16  * $Log: StVpdTriggerDetector.h,v $
17  * Revision 2.5 2013/10/30 15:47:16 ullrich
18  * Added ADCmxq(), TDCmxq() and referring data member (WJL).
19  *
20  * Revision 2.4 2007/04/03 20:11:41 ullrich
21  * Modified for actual VPD used in 2007.
22  *
23  * Revision 2.3 2002/02/22 22:56:53 jeromel
24  * Doxygen basic documentation in all header files. None of this is required
25  * for QM production.
26  *
27  * Revision 2.2 2001/04/05 04:00:47 ullrich
28  * Replaced all (U)Long_t by (U)Int_t and all redundant ROOT typedefs.
29  *
30  * Revision 2.1 1999/10/13 19:44:20 ullrich
31  * Initial Revision
32  *
33  **************************************************************************/
34 #ifndef StVpdTriggerDetector_hh
35 #define StVpdTriggerDetector_hh
36 #include "StObject.h"
37 #include "StEnumerations.h"
38 
39 class dst_TrgDet_st;
40 class StTriggerData;
41 
43 public:
45  StVpdTriggerDetector(const dst_TrgDet_st&);
47  // StVpdTriggerDetector& operator=(const StVpdTriggerDetector&); use default
48  virtual ~StVpdTriggerDetector();
49 
50  unsigned int numberOfVpdCounters() const;
51  unsigned short ADC(StBeamDirection eastwest, unsigned int pmt) const;
52  unsigned short TDC(StBeamDirection eastwest, unsigned int pmt) const;
53  unsigned short ADCmxq(StBeamDirection eastwest, unsigned int pmt) const; //WJL
54  unsigned short TDCmxq(StBeamDirection eastwest, unsigned int pmt) const; //WJL
55  unsigned short EarliestTDC(StBeamDirection eastwest) const;
56  unsigned short TimeDifference() const {return mTimeDifference;};
57 
58  void setADC(StBeamDirection eastwest, unsigned int pmt, unsigned short v);
59  void setTDC(StBeamDirection eastwest, unsigned int pmt, unsigned short v);
60  void setADCmxq(StBeamDirection eastwest, unsigned int pmt, unsigned short v); //WJL
61  void setTDCmxq(StBeamDirection eastwest, unsigned int pmt, unsigned short v); //WJL
62  void setEarliestTDC(StBeamDirection eastwest, unsigned short v) {mEarliestTDC[eastwest]=v;}
63  void setTimeDifference(unsigned short v) {mTimeDifference = v;}
64 
65 protected:
66  enum {mMaxVpdCounter = 16};
67  unsigned short mADC[2][mMaxVpdCounter];
68  unsigned short mTDC[2][mMaxVpdCounter];
69  unsigned short mADCmxq[2][mMaxVpdCounter]; //WJL
70  unsigned short mTDCmxq[2][mMaxVpdCounter]; //WJL
71  unsigned short mEarliestTDC[2];
72  unsigned short mTimeDifference;
73  unsigned short mYear;
74 
75  ClassDef(StVpdTriggerDetector,3)
76 };
77 #endif