Belle II Software development
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#pragma once
10
11#include <framework/datastore/RelationsObject.h>
12
13namespace Belle2 {
18
20 class TRGTOPSlotTiming : public RelationsObject {
21
22 public:
23
24 // Empty constructor
25 // Recommended for ROOT IO
26 TRGTOPSlotTiming() :
27 m_slotId(0),
28 m_slotTiming(0),
30 m_slotNHits(0),
31 m_slotLogL(0),
36 {}
37
40 int slotId
41 ) :
42 m_slotId(slotId),
43 m_slotTiming(0),
45 m_slotNHits(0),
46 m_slotLogL(0),
51 {}
52
55 int slotId,
56 int slotTiming,
57 int slotSegment,
58 int slotNHits,
59 int slotLogL,
60 int slotDecisionClockCycle,
61 int slotNErrors,
62 int slotThisBoard,
63 int slotFirstTS
64 ) :
65 m_slotId(slotId),
66 m_slotTiming(slotTiming),
67 m_slotSegment(slotSegment),
68 m_slotNHits(slotNHits),
69 m_slotLogL(slotLogL),
70 m_slotDecisionClockCycle(slotDecisionClockCycle),
71 m_slotNErrors(slotNErrors),
72 m_slotThisBoard(slotThisBoard),
73 m_slotFirstTS(slotFirstTS)
74 {}
75
78
79 int getSlotId() const { return m_slotId; }
80 int getSlotTiming() const { return m_slotTiming; }
81 int getSlotSegment() const { return m_slotSegment;}
82 int getSlotNHits() const { return m_slotNHits; }
83 int getSlotLogL() const { return m_slotLogL; }
84 int getSlotDecisionClockCycle() const { return m_slotDecisionClockCycle;}
85 int getSlotNErrors() const { return m_slotNErrors;}
86 int getSlotThisBoard() const { return m_slotThisBoard;}
87 int getSlotFirstTS() const { return m_slotFirstTS;}
88
89 void setSlotId(int slotId);
90 void setSlotTiming(int slotTiming);
91 void setSlotSegment(int slotSegment);
92 void setSlotNHits(int slotNHits);
93 void setSlotLogL(int slotLogL);
94 void setSlotDecisionClockCycle(int slotDecisionClockCycle);
95 void setSlotNErrors(int slotNErrors);
96 void setSlotThisBoard(int slotThisBoard);
97 void setSlotFirstTS(int slotFirstTS);
98
99 bool isThisBoard() const;
100
101 bool isFirstTSAvailable() const;
102
103 private:
104
123
125 ClassDef(TRGTOPSlotTiming, 5);
126
127 };
128
130} //end namespace Belle2
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_slotDecisionClockCycle
clock cycle when the decision was made
int m_slotFirstTS
first TS for the decision (when available)
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Abstract base class for different kinds of events.