Belle II Software  release-08-01-10
trggdlWriteLocalDBPrescale.cc
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 #include <framework/database/DBImportObjPtr.h>
10 #include <framework/database/DBObjPtr.h>
11 #include <mdst/dbobjects/TRGGDLDBPrescales.h>
12 
13 using namespace Belle2;
14 
15 //prescale setting
16 void setprescale()
17 {
18 
19  const int N_BITS_RESERVED = 200;
20  const int N_PSNM_ARRAY = 10;
21 
22  const int run[N_PSNM_ARRAY][4] = { //itnitial exp, initial run, end exp, end run
23  {0, 0, 3, 107},
24  {3, 108, 3, 295},
25  {3, 296, 3, 1511},
26  {3, 1512, 3, 1810},
27  {3, 1811, 3, 1994},
28  {3, 1995, 3, 2000},
29  {3, 2001, 3, 2313},
30  {3, 2314, 3, 3503},
31  {3, 3504, 3, 5340},
32  {3, 5341, 10, 0}
33  };
34 
35  const unsigned
36  psnmValues[N_PSNM_ARRAY][N_BITS_RESERVED] = {
37  // 0
38  // psn_0055 r59-
39  {
40  0, 0, 0, 0, 1, 1, 1, 1, 1, 1,
41  0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
42  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
43  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
44  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
45  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
46  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
47  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
48  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
49  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
50  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
51  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
52  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
53  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
54  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
55  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
56  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
57  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
58  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
59  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
60  },
61 
62  // 1
63  // psn_0056 r108-
64  {
65  0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
66  1, 1, 1, 1, 1, 1, 1, 1, 1, 0,
67  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
68  0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
69  0, 1, 0, 1, 0, 0, 0, 0, 0, 0,
70  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
71  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
72  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
73  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
74  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
75  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
76  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
77  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
78  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
79  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
80  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
81  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
82  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
83  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
84  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
85  },
86 
87  // 2
88  // psn_0057 r296-
89  {
90  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
91  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
92  1500, 150, 0, 0, 1, 1, 0, 0, 0, 0,
93  0, 0, 0, 30, 0, 0, 20000, 0, 0, 0,
94  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
95  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
96  1, 0, 20, 0, 0, 0, 0, 0, 0, 0,
97  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
98  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
99  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
100  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
101  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
102  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
103  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
104  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
105  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
106  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
107  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
108  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
109  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
110  },
111 
112  // 3
113  // psn_0058 r1512-r1615 ecltiming=1
114  // Not used for good data
115  {
116  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
117  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
118  1500, 150, 0, 0, 1, 1, 0, 1, 0, 0,
119  0, 0, 0, 30, 0, 0, 20000, 0, 0, 0,
120  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
121  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
122  1, 0, 20, 0, 0, 0, 0, 0, 0, 0,
123  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
124  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
125  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
126  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
127  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
128  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
129  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
130  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
131  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
132  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
133  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
134  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
135  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
136  },
137 
138  // 4
139  // psn_0057 r1811- ecltiming=0
140  {
141  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
142  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
143  1500, 150, 0, 0, 1, 1, 0, 0, 0, 0,
144  0, 0, 0, 30, 0, 0, 20000, 0, 0, 0,
145  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
146  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
147  1, 0, 20, 0, 0, 0, 0, 0, 0, 0,
148  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
149  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
150  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
151  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
152  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
153  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
154  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
155  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
156  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
157  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
158  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
159  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
160  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
161  },
162 
163  // 5
164  // psn_0059 r1995- 5 Dark bits
165  {
166  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
167  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
168  1500, 150, 0, 0, 1, 1, 0, 0, 0, 0,
169  0, 0, 0, 30, 0, 0, 20000, 0, 0, 0,
170  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
171  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
172  1, 0, 20, 0, 0, 0, 0, 1, 1, 1,
173  1, 1, 0, 0, 0, 0, 0, 0, 0, 0,
174  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
175  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
176  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
177  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
178  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
179  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
180  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
181  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
182  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
183  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
184  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
185  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
186  },
187 
188  // 6
189  // psn_0059 r2001- 3 Dark bits
190  {
191  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
192  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
193  1500, 150, 0, 0, 1, 1, 0, 0, 0, 0,
194  0, 0, 0, 30, 0, 0, 20000, 0, 0, 0,
195  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
196  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
197  1, 0, 20, 0, 0, 0, 0, 1, 1, 1,
198  1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
199  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
200  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
201  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
202  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
203  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
204  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
205  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
206  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
207  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
208  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
209  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
210  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
211  },
212 
213  // 7
214  // psn_0060 r2314- eclnimo03 30->300
215  {
216  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
217  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
218  1500, 150, 0, 0, 1, 1, 0, 0, 0, 0,
219  0, 0, 0, 300, 0, 0, 20000, 0, 0, 0,
220  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
221  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
222  1, 0, 20, 0, 0, 0, 0, 1, 1, 1,
223  1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
224  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
225  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
226  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
227  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
228  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
229  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
230  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
231  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
232  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
233  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
234  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
235  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
236  },
237 
238  // 8
239  // psn_0063 e3504- bg(26)->1
240  {
241  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
242  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
243  1500, 150, 0, 0, 1, 1, 1, 0, 0, 0,
244  0, 0, 0, 300, 0, 0, 20000, 0, 0, 0,
245  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
246  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
247  1, 0, 20, 0, 0, 0, 0, 1, 1, 1,
248  1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
249  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
250  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
251  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
252  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
253  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
254  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
255  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
256  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
257  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
258  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
259  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
260  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
261  },
262 
263  // 9
264  // psn_0064=65. e5341- eed,fed,fp,bha3d
265  // Can be earlier than 5341 but
266  // runsum files lost.
267  {
268  0, 0, 1, 1, 0, 0, 1, 1, 1, 0,
269  1, 150, 0, 1, 0, 1, 1, 1, 1, 20,
270  1500, 150, 0, 0, 1, 1, 1, 0, 0, 0,
271  0, 0, 0, 300, 0, 0, 20000, 0, 0, 0,
272  0, 0, 400000, 1, 0, 0, 0, 0, 0, 0,
273  0, 0, 0, 0, 0, 0, 0, 0, 1, 1,
274  1, 0, 20, 1, 1, 1, 1, 1, 1, 1,
275  1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
276  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
277  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
278  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
279  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
280  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
281  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
282  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
283  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
284  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
285  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
286  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
287  0, 0, 0, 0, 0, 0, 0, 0, 0, 0
288  }
289  };
290 
291 
293  prescales.construct();
294  for (int i = 0; i < N_PSNM_ARRAY; i++) {
295  IntervalOfValidity iov(run[i][0], run[i][1], run[i][2], run[i][3]);
296  for (int j = 0; j < N_BITS_RESERVED; j++) {
297  prescales->setprescales(j, psnmValues[i][j]);
298  }
299  prescales.import(iov);
300  }
301 
302 
303 
304 }
305 
306 
307 
308 int main()
309 {
310 
311  setprescale();
312 
313 }
314 
315 
Class for importing a single object to the database.
A class that describes the interval of experiments/runs for which an object in the database is valid.
Abstract base class for different kinds of events.
int main(int argc, char **argv)
Run all tests.
Definition: test_main.cc:91