Belle II Software  release-06-00-14
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 
14 #include <vector>
15 
16 #include <trg/top/dataobjects/TRGTOPSlotTiming.h>
17 
18 namespace Belle2 {
26  class TRGTOPUnpackerStore : public TObject {
27 
28  public:
29 
30  // Empty constructor
31  // Recommended for ROOT IO
51  {}
52 
55  int eventIdL1
56  ) :
57  m_eventIdL1(eventIdL1),
75  {}
76 
79  int eventIdL1,
80  int eventIdTOP,
81  int windowIdTOP,
82  int rvcB2L,
83  int rvcWindow,
84  int rvcTopTimingDecisionPrev,
85  int rvcTopTimingDecisionNow,
86  int rvcTopTimingDecisionNowGdl,
87  int combinedTimingTop,
88  int nSlotsCombinedTimingTop,
89  int combinedTimingTopResidual,
90  int nErrorsMinor,
91  int nErrorsMajor,
92  int trigType,
93  int nHitSum,
94  int logLSum,
95  int logLVar,
96  int timingVar
97  ) :
98  m_eventIdL1(eventIdL1),
99  m_eventIdTOP(eventIdTOP),
100  m_windowIdTOP(windowIdTOP),
101  m_rvcB2L(rvcB2L),
102  m_rvcWindow(rvcWindow),
103  m_rvcTopTimingDecisionPrev(rvcTopTimingDecisionPrev),
104  m_rvcTopTimingDecisionNow(rvcTopTimingDecisionNow),
105  m_rvcTopTimingDecisionNowGdl(rvcTopTimingDecisionNowGdl),
106  m_combinedTimingTop(combinedTimingTop),
107  m_nSlotsCombinedTimingTop(nSlotsCombinedTimingTop),
108  m_combinedTimingTopResidual(combinedTimingTopResidual),
109  m_nErrorsMinor(nErrorsMinor),
110  m_nErrorsMajor(nErrorsMajor),
111  m_trigType(trigType),
112  m_nHitSum(nHitSum),
113  m_logLSum(logLSum),
114  m_logLVar(logLVar),
115  m_timingVar(timingVar)
116  {}
117 
120 
121  int getEventIdL1() const { return m_eventIdL1;}
122  int getEventIdTOP() const { return m_eventIdTOP;}
123  int getWindowIdTOP() const { return m_windowIdTOP;}
124  int getRvcB2L() const { return m_rvcB2L;}
125  int getRvcWindow() const { return m_rvcWindow;}
126  int getRvcTopTimingDecisionPrev() const { return m_rvcTopTimingDecisionPrev;}
127  int getRvcTopTimingDecisionNow() const { return m_rvcTopTimingDecisionNow;}
128  int getRvcTopTimingDecisionNowGdl() const { return m_rvcTopTimingDecisionNowGdl;}
129  int getCombinedTimingTop() const { return m_combinedTimingTop;}
130  int getNSlotsCombinedTimingTop() const { return m_nSlotsCombinedTimingTop;}
131  int getCombinedTimingTopResidual() const { return m_combinedTimingTopResidual;}
132  int getNErrorsMinor() const { return m_nErrorsMinor;}
133  int getNErrorsMajor() const { return m_nErrorsMajor;}
134  int getTrigType() const { return m_trigType;}
135  int getNHitSum() const { return m_nHitSum;}
136  int getLogLSum() const { return m_logLSum;}
137  int getLogLVar() const { return m_logLVar;}
138  int getTimingVar() const { return m_timingVar;}
139  //int get() const { return m_;}
140 
141  //Need namespace qualifier because ROOT CINT has troubles otherwise
142  const std::vector<Belle2::TRGTOPSlotTiming> getSlotTimingDecisions() { return m_slotTimingDecisions; }
143 
144  void setEventIdL1(int eventIdL1);
145  void setEventIdTOP(int eventIdTOP);
146  void setWindowIdTOP(int windowIdTOP);
147  void setRvcB2L(int rvcB2L);
148  void setRvcWindow(int rvcWindow);
149  void setRvcTopTimingDecisionPrev(int rvcTopTimingDecisionPrev);
150  void setRvcTopTimingDecisionNow(int rvcTopTimingDecisionNow);
151  void setRvcTopTimingDecisionNowGdl(int rvcTopTimingDecisionNowGdl);
152  void setCombinedTimingTop(int combinedTimingTop);
153  void setNSlotsCombinedTimingTop(int nSlotsCombinedTimingTop);
154  void setCombinedTimingTopResidual(int combinedTimingTopResidual);
155  void setNErrorsMinor(int nErrorsMinor);
156  void setNErrorsMajor(int nErrorsMajor);
157  void setTrigType(int trigType);
158  void setNHitSum(int nHitSum);
159  void setLogLSum(int logLSum);
160  void setLogLVar(int logLVar);
161  void setTimingVar(int timingVar);
162  //void set(int );
163 
164  void setSlotTimingDecision(TRGTOPSlotTiming slotTiming);
165 
166  private:
167 
175  int m_rvcB2L;
204 
206  std::vector<TRGTOPSlotTiming> m_slotTimingDecisions;
210 
211  };
212 
214 } //end namespace Belle2
215 
216 #endif
217 
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)
static const int intNaN
constant for integer NaN
Abstract base class for different kinds of events.