Belle II Software  release-08-01-10
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 
19 namespace 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),
37  m_windowIdTOP(0),
38  m_rvcB2L(0),
39  m_rvcWindow(0),
46  m_nErrorsMinor(0),
47  m_nErrorsMajor(0),
48  m_trigType(0),
49  m_nHitSum(0),
50  m_logLSum(0),
51  m_logLVar(0),
52  m_timingVar(0)
53  {}
54 
57  int eventIdL1
58  ) :
59  m_eventIdL1(eventIdL1),
60  m_eventIdTOP(0),
61  m_windowIdTOP(0),
62  m_rvcB2L(0),
63  m_rvcWindow(0),
70  m_nErrorsMinor(0),
71  m_nErrorsMajor(0),
72  m_trigType(0),
73  m_nHitSum(0),
74  m_logLSum(0),
75  m_logLVar(0),
76  m_timingVar(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 
177  int m_rvcB2L;
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.