Belle II Software  release-08-01-10
TRGTOPSlotTiming.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #ifndef TRGTOPSLOTTIMING_H
10 #define TRGTOPSLOTTIMING_H
11 
12 //#include <TObject.h>
13 #include <framework/datastore/RelationsObject.h>
14 
15 #include <vector>
16 #include <limits>
17 
18 
19 namespace Belle2 {
26  // class TRGTOPSlotTiming : public TObject {
28 
29  public:
30 
31  // Empty constructor
32  // Recommended for ROOT IO
34  m_slotId(0),
35  m_slotTiming(0),
36  m_slotSegment(0),
37  m_slotNHits(0),
38  m_slotLogL(0),
40  m_slotNErrors(0),
41  m_slotThisBoard(0),
42  m_slotFirstTS(0)
43  {}
44 
46  explicit TRGTOPSlotTiming(
47  int slotId
48  ) :
49  m_slotId(slotId),
50  m_slotTiming(0),
51  m_slotSegment(0),
52  m_slotNHits(0),
53  m_slotLogL(0),
55  m_slotNErrors(0),
56  m_slotThisBoard(1),
57  m_slotFirstTS(-1)
58  {}
59 
62  int slotId,
63  int slotTiming,
64  int slotSegment,
65  int slotNHits,
66  int slotLogL,
67  int slotDecisionClockCycle,
68  int slotNErrors,
69  int slotThisBoard,
70  int slotFirstTS
71  ) :
72  m_slotId(slotId),
73  m_slotTiming(slotTiming),
74  m_slotSegment(slotSegment),
75  m_slotNHits(slotNHits),
76  m_slotLogL(slotLogL),
77  m_slotDecisionClockCycle(slotDecisionClockCycle),
78  m_slotNErrors(slotNErrors),
79  m_slotThisBoard(slotThisBoard),
80  m_slotFirstTS(slotFirstTS)
81  {}
82 
85 
86  int getSlotId() const { return m_slotId; }
87  int getSlotTiming() const { return m_slotTiming; }
88  int getSlotSegment() const { return m_slotSegment;}
89  int getSlotNHits() const { return m_slotNHits; }
90  int getSlotLogL() const { return m_slotLogL; }
91  int getSlotDecisionClockCycle() const { return m_slotDecisionClockCycle;}
92  int getSlotNErrors() const { return m_slotNErrors;}
93  int getSlotThisBoard() const { return m_slotThisBoard;}
94  int getSlotFirstTS() const { return m_slotFirstTS;}
95  //int get() const { return m_;}
96 
97  void setSlotId(int slotId);
98  void setSlotTiming(int slotTiming);
99  void setSlotSegment(int slotSegment);
100  void setSlotNHits(int slotNHits);
101  void setSlotLogL(int slotLogL);
102  void setSlotDecisionClockCycle(int slotDecisionClockCycle);
103  void setSlotNErrors(int slotNErrors);
104  void setSlotThisBoard(int slotThisBoard);
105  void setSlotFirstTS(int slotFirstTS);
106  //void set(int );
107 
108  bool isThisBoard() const;
109 
110  bool isFirstTSAvailable() const;
111 
112  private:
113 
115  int m_slotId;
132 
135 
136  };
137 
139 } //end namespace Belle2
140 
141 #endif
Defines interface for accessing relations of objects in StoreArray.
int m_slotNHits
slot N hits (timestamps)
int m_slotThisBoard
source of slot information (1 means this UT3, 0 means the other UT3)
TRGTOPSlotTiming(int slotId, int slotTiming, int slotSegment, int slotNHits, int slotLogL, int slotDecisionClockCycle, int slotNErrors, int slotThisBoard, int slotFirstTS)
Another Useful Constructor.
int m_slotId
slot Id (1 through 16)
TRGTOPSlotTiming(int slotId)
A Useful Constructor.
ClassDef(TRGTOPSlotTiming, 5)
the class title
int m_slotSegment
slot segment
int m_slotDecisionClockCycle
clock cycle when the decision was made
int m_slotFirstTS
first TS for the decision (when available)
Abstract base class for different kinds of events.