Belle II Software development
TRGTOPUnpackerStore.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 TRGTOPUNPACKERSTORE_H
10#define TRGTOPUNPACKERSTORE_H
11
12//#include <TObject.h>
13#include <framework/datastore/RelationsObject.h>
14
15#include <vector>
16
17#include <trg/top/dataobjects/TRGTOPSlotTiming.h>
18
19namespace Belle2 {
27 // class TRGTOPUnpackerStore : public TObject {
29
30 public:
31
32 // Empty constructor
33 // Recommended for ROOT IO
35 m_eventIdL1(0),
36 m_eventIdTOP(0),
38 m_rvcB2L(0),
39 m_rvcWindow(0),
48 m_trigType(0),
49 m_nHitSum(0),
50 m_logLSum(0),
51 m_logLVar(0),
53 {}
54
57 int eventIdL1
58 ) :
59 m_eventIdL1(eventIdL1),
60 m_eventIdTOP(0),
62 m_rvcB2L(0),
63 m_rvcWindow(0),
72 m_trigType(0),
73 m_nHitSum(0),
74 m_logLSum(0),
75 m_logLVar(0),
77 {}
78
81 int eventIdL1,
82 int eventIdTOP,
83 int windowIdTOP,
84 int rvcB2L,
85 int rvcWindow,
86 int rvcTopTimingDecisionPrev,
87 int rvcTopTimingDecisionNow,
88 int rvcTopTimingDecisionNowGdl,
89 int combinedTimingTop,
90 int nSlotsCombinedTimingTop,
91 int combinedTimingTopResidual,
92 int nErrorsMinor,
93 int nErrorsMajor,
94 int trigType,
95 int nHitSum,
96 int logLSum,
97 int logLVar,
98 int timingVar
99 ) :
100 m_eventIdL1(eventIdL1),
101 m_eventIdTOP(eventIdTOP),
102 m_windowIdTOP(windowIdTOP),
103 m_rvcB2L(rvcB2L),
104 m_rvcWindow(rvcWindow),
105 m_rvcTopTimingDecisionPrev(rvcTopTimingDecisionPrev),
106 m_rvcTopTimingDecisionNow(rvcTopTimingDecisionNow),
107 m_rvcTopTimingDecisionNowGdl(rvcTopTimingDecisionNowGdl),
108 m_combinedTimingTop(combinedTimingTop),
109 m_nSlotsCombinedTimingTop(nSlotsCombinedTimingTop),
110 m_combinedTimingTopResidual(combinedTimingTopResidual),
111 m_nErrorsMinor(nErrorsMinor),
112 m_nErrorsMajor(nErrorsMajor),
113 m_trigType(trigType),
114 m_nHitSum(nHitSum),
115 m_logLSum(logLSum),
116 m_logLVar(logLVar),
117 m_timingVar(timingVar)
118 {}
119
122
123 int getEventIdL1() const { return m_eventIdL1;}
124 int getEventIdTOP() const { return m_eventIdTOP;}
125 int getWindowIdTOP() const { return m_windowIdTOP;}
126 int getRvcB2L() const { return m_rvcB2L;}
127 int getRvcWindow() const { return m_rvcWindow;}
128 int getRvcTopTimingDecisionPrev() const { return m_rvcTopTimingDecisionPrev;}
129 int getRvcTopTimingDecisionNow() const { return m_rvcTopTimingDecisionNow;}
130 int getRvcTopTimingDecisionNowGdl() const { return m_rvcTopTimingDecisionNowGdl;}
131 int getCombinedTimingTop() const { return m_combinedTimingTop;}
132 int getNSlotsCombinedTimingTop() const { return m_nSlotsCombinedTimingTop;}
133 int getCombinedTimingTopResidual() const { return m_combinedTimingTopResidual;}
134 int getNErrorsMinor() const { return m_nErrorsMinor;}
135 int getNErrorsMajor() const { return m_nErrorsMajor;}
136 int getTrigType() const { return m_trigType;}
137 int getNHitSum() const { return m_nHitSum;}
138 int getLogLSum() const { return m_logLSum;}
139 int getLogLVar() const { return m_logLVar;}
140 int getTimingVar() const { return m_timingVar;}
141 //int get() const { return m_;}
142
143 //Need namespace qualifier because ROOT CINT has troubles otherwise
144 const std::vector<Belle2::TRGTOPSlotTiming> getSlotTimingDecisions() { return m_slotTimingDecisions; }
145
146 void setEventIdL1(int eventIdL1);
147 void setEventIdTOP(int eventIdTOP);
148 void setWindowIdTOP(int windowIdTOP);
149 void setRvcB2L(int rvcB2L);
150 void setRvcWindow(int rvcWindow);
151 void setRvcTopTimingDecisionPrev(int rvcTopTimingDecisionPrev);
152 void setRvcTopTimingDecisionNow(int rvcTopTimingDecisionNow);
153 void setRvcTopTimingDecisionNowGdl(int rvcTopTimingDecisionNowGdl);
154 void setCombinedTimingTop(int combinedTimingTop);
155 void setNSlotsCombinedTimingTop(int nSlotsCombinedTimingTop);
156 void setCombinedTimingTopResidual(int combinedTimingTopResidual);
157 void setNErrorsMinor(int nErrorsMinor);
158 void setNErrorsMajor(int nErrorsMajor);
159 void setTrigType(int trigType);
160 void setNHitSum(int nHitSum);
161 void setLogLSum(int logLSum);
162 void setLogLVar(int logLVar);
163 void setTimingVar(int timingVar);
164 //void set(int );
165
166 void setSlotTimingDecision(TRGTOPSlotTiming slotTiming);
167
168 private:
169
206
208 std::vector<TRGTOPSlotTiming> m_slotTimingDecisions;
212
213 };
214
216} //end namespace Belle2
217
218#endif
219
Defines interface for accessing relations of objects in StoreArray.
TRGTOPUnpackerStore(int eventIdL1, int eventIdTOP, int windowIdTOP, int rvcB2L, int rvcWindow, int rvcTopTimingDecisionPrev, int rvcTopTimingDecisionNow, int rvcTopTimingDecisionNowGdl, int combinedTimingTop, int nSlotsCombinedTimingTop, int combinedTimingTopResidual, int nErrorsMinor, int nErrorsMajor, int trigType, int nHitSum, int logLSum, int logLVar, int timingVar)
Another Useful Constructor.
int m_rvcTopTimingDecisionNowGdl
rvc of the current TOP timing decision sent to GDL
int m_nSlotsCombinedTimingTop
number of slots used for combined decision
std::vector< TRGTOPSlotTiming > m_slotTimingDecisions
vector of slot-level timing decisions
ClassDef(TRGTOPUnpackerStore, 2)
the class title
int m_rvcWindow
rvc of the current window
int m_rvcTopTimingDecisionNow
rvc of the current TOP timing decision
int m_combinedTimingTopResidual
t0 residual (between actual and estimated timing decisions)
int m_eventIdTOP
TOP decision's event id.
int m_timingVar
timing variance (among slots)
int m_rvcB2L
rvc at the time when B2L buffer was sent out
int m_windowIdTOP
Window number for TOP decision.
int m_rvcTopTimingDecisionPrev
rvc of previous TOP timing decision
int m_nHitSum
N hit sum (over slots)
TRGTOPUnpackerStore(int eventIdL1)
A Useful Constructor.
int m_nErrorsMajor
the number of major errors observed during unpacking
int m_nErrorsMinor
the number of minor errors observed during unpacking
int m_logLSum
logL sum (over slots)
int m_logLVar
logL variance (among slots)
Abstract base class for different kinds of events.