ATLAS Offline Software
Loading...
Searching...
No Matches
MuonFeatureDetails.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5#include <math.h>
6#include <sstream>
7#include <iomanip>
8
10
11
13 m_id = NULLID;
14 m_te_id = 0x0;
15 m_lvl1_id = 0x0;
16 m_lumi_block = 0x0;
17 m_muondetmask = 0x0;
18 m_RoIID = 0x0;
19 m_RoISystem = 0x0;
20 m_RoISubsystem = 0x0;
21 m_RoISector = 0x0;
22 m_RoINumber = 0x0;
23 m_RoIThreshold = 0x0;
24 m_RoIEta = 0.;
25 m_RoIPhi = 0.;
33
36}
37
39 uint32_t te_id, uint32_t lvl1_id, uint32_t lumi_block, uint32_t muondetmask,
40 uint32_t RoIID, uint32_t RoISystem, uint32_t RoISubsystem, uint32_t RoISector,
41 uint32_t RoINumber, uint32_t RoIThreshold, float RoIEta, float RoIPhi,
49
51 m_muondetmask(muondetmask), m_RoIID(RoIID), m_RoISystem(RoISystem),
52 m_RoISubsystem(RoISubsystem), m_RoISector(RoISector), m_RoINumber(RoINumber),
53 m_RoIThreshold(RoIThreshold), m_RoIEta(RoIEta), m_RoIPhi(RoIPhi)
54{
62
65}
66
68 m_extension_capacity = source.extension_capacity();
69 m_max_rob_capacity = source.max_rob_capacity();
70 m_max_csm_capacity = source.max_csm_capacity();
71 m_max_lvl1_emu_capacity = source.max_lvl1_emu_capacity();
72 m_max_rpc_hits_capacity = source.max_rpc_hits_capacity();
73 m_max_tgc_hits_capacity = source.max_tgc_hits_capacity();
74 m_max_mdt_hits_capacity = source.max_mdt_hits_capacity();
75
76 copy_variables(*this,source);
77
78 m_chamber_type_1 = source.chamber_type_1();
79 m_chamber_type_2 = source.chamber_type_2();
80 m_pos = source.pos();
81 m_aw = source.aw();
82 m_bw = source.bw();
83 m_zetaMin = source.zetaMin();
84 m_zetaMax = source.zetaMax();
85 m_radMin = source.radMin();
86 m_radMax = source.radMax();
87 m_etaMin = source.etaMin();
88 m_etaMax = source.etaMax();
89 m_st_phi = source.st_phi();
90 m_st_roads = source.st_roads();
91
92 copy_vector(m_extension0, source.extension0(), m_extension_capacity);
93 copy_vector(m_extension1, source.extension1(), m_extension_capacity);
94 copy_vector(m_extension2, source.extension2(), m_extension_capacity);
95 copy_vector(m_extension3, source.extension3(), m_extension_capacity);
96 copy_vector(m_extension4, source.extension4(), m_extension_capacity);
97 copy_vector(m_extension5, source.extension5(), m_extension_capacity);
98 copy_vector(m_extension6, source.extension6(), m_extension_capacity);
99 copy_vector(m_extension7, source.extension7(), m_extension_capacity);
100 copy_vector(m_extension8, source.extension8(), m_extension_capacity);
101 copy_vector(m_extension9, source.extension9(), m_extension_capacity);
102
103 copy_vector(m_lvl1_emulation, source.lvl1_emulation(), m_max_lvl1_emu_capacity);
104
105 copy_vector(m_rob_id, source.rob_id(), m_max_rob_capacity);
106 copy_vector(m_csm_id, source.csm_id(), m_max_csm_capacity);
107 copy_vector(m_csm_size, source.csm_size(), m_max_csm_capacity);
108 copy_vector(m_csm_error, source.csm_error(), m_max_csm_capacity);
109 copy_vector(m_removed_rob_id, source.removed_rob_id(), m_max_rob_capacity);
110 copy_vector(m_removed_csm_id, source.removed_csm_id(), m_max_csm_capacity);
111
112 copy_vector(m_pad_hit_onlineId, source.pad_hit_onlineId(), m_max_rpc_hits_capacity);
113 copy_vector(m_pad_hit_code, source.pad_hit_code(), m_max_rpc_hits_capacity);
114 copy_vector(m_pad_hit_x, source.pad_hit_x(), m_max_rpc_hits_capacity);
115 copy_vector(m_pad_hit_y, source.pad_hit_y(), m_max_rpc_hits_capacity);
116 copy_vector(m_pad_hit_z, source.pad_hit_z(), m_max_rpc_hits_capacity);
117 copy_vector(m_pad_hit_r, source.pad_hit_r(), m_max_rpc_hits_capacity);
118 copy_vector(m_pad_hit_p, source.pad_hit_p(), m_max_rpc_hits_capacity);
119
120 copy_vector(m_tgc_Inn_rho_hit_phi, source.tgc_Inn_rho_hit_phi(), m_max_tgc_hits_capacity);
121 copy_vector(m_tgc_Inn_rho_hit_r, source.tgc_Inn_rho_hit_r(), m_max_tgc_hits_capacity);
122 copy_vector(m_tgc_Inn_rho_hit_z, source.tgc_Inn_rho_hit_z(), m_max_tgc_hits_capacity);
123 copy_vector(m_tgc_Inn_rho_hit_width, source.tgc_Inn_rho_hit_width(), m_max_tgc_hits_capacity);
124 copy_vector(m_tgc_Inn_rho_hit_in_seg, source.tgc_Inn_rho_hit_in_seg(), m_max_tgc_hits_capacity);
125 copy_vector(m_tgc_Inn_phi_hit_phi, source.tgc_Inn_phi_hit_phi(), m_max_tgc_hits_capacity);
126 copy_vector(m_tgc_Inn_phi_hit_r, source.tgc_Inn_phi_hit_r(), m_max_tgc_hits_capacity);
127 copy_vector(m_tgc_Inn_phi_hit_z, source.tgc_Inn_phi_hit_z(), m_max_tgc_hits_capacity);
128 copy_vector(m_tgc_Inn_phi_hit_width, source.tgc_Inn_phi_hit_width(), m_max_tgc_hits_capacity);
129 copy_vector(m_tgc_Inn_phi_hit_in_seg, source.tgc_Inn_phi_hit_in_seg(), m_max_tgc_hits_capacity);
130 copy_vector(m_tgc_Mid_rho_hit_phi, source.tgc_Mid_rho_hit_phi(), m_max_tgc_hits_capacity);
131 copy_vector(m_tgc_Mid_rho_hit_r, source.tgc_Mid_rho_hit_r(), m_max_tgc_hits_capacity);
132 copy_vector(m_tgc_Mid_rho_hit_z, source.tgc_Mid_rho_hit_z(), m_max_tgc_hits_capacity);
133 copy_vector(m_tgc_Mid_rho_hit_width, source.tgc_Mid_rho_hit_width(), m_max_tgc_hits_capacity);
134 copy_vector(m_tgc_Mid_rho_hit_in_seg, source.tgc_Mid_rho_hit_in_seg(), m_max_tgc_hits_capacity);
135 copy_vector(m_tgc_Mid_phi_hit_phi, source.tgc_Mid_phi_hit_phi(), m_max_tgc_hits_capacity);
136 copy_vector(m_tgc_Mid_phi_hit_r, source.tgc_Mid_phi_hit_r(), m_max_tgc_hits_capacity);
137 copy_vector(m_tgc_Mid_phi_hit_z, source.tgc_Mid_phi_hit_z(), m_max_tgc_hits_capacity);
138 copy_vector(m_tgc_Mid_phi_hit_width, source.tgc_Mid_phi_hit_width(), m_max_tgc_hits_capacity);
139 copy_vector(m_tgc_Mid_phi_hit_in_seg, source.tgc_Mid_phi_hit_in_seg(), m_max_tgc_hits_capacity);
140
141 copy_vector(m_mdt_onlineId, source.mdt_onlineId(), m_max_mdt_hits_capacity);
142 copy_vector(m_mdt_offlineId, source.mdt_offlineId(), m_max_mdt_hits_capacity);
143 copy_vector(m_mdt_tube_r, source.mdt_tube_r(), m_max_mdt_hits_capacity);
144 copy_vector(m_mdt_tube_z, source.mdt_tube_z(), m_max_mdt_hits_capacity);
145 copy_vector(m_mdt_tube_residual, source.mdt_tube_residual(), m_max_mdt_hits_capacity);
146 copy_vector(m_mdt_tube_time, source.mdt_tube_time(), m_max_mdt_hits_capacity);
147 copy_vector(m_mdt_tube_space, source.mdt_tube_space(), m_max_mdt_hits_capacity);
148 copy_vector(m_mdt_tube_sigma, source.mdt_tube_sigma(), m_max_mdt_hits_capacity);
149}
150
153
154 int ext = (m_extension_capacity != source.extension_capacity()) ?
155 source.extension_capacity() : -1;
156 int rob = (m_max_rob_capacity != source.max_rob_capacity()) ?
157 source.max_rob_capacity() : -1;
158 int csm = (m_max_csm_capacity != source.max_csm_capacity()) ?
159 source.max_csm_capacity() : -1;
160 int lvl1 = (m_max_lvl1_emu_capacity != source.max_lvl1_emu_capacity()) ?
161 source.max_lvl1_emu_capacity() : -1;
162 int rpc = (m_max_rpc_hits_capacity != source.max_rpc_hits_capacity()) ?
163 source.max_rpc_hits_capacity() : -1;
164 int tgc = (m_max_tgc_hits_capacity != source.max_tgc_hits_capacity()) ?
165 source.max_tgc_hits_capacity() : -1;
166 int mdt = (m_max_mdt_hits_capacity != source.max_mdt_hits_capacity()) ?
167 source.max_mdt_hits_capacity() : -1;
168
169 m_extension_capacity = source.extension_capacity();
170 m_max_rob_capacity = source.max_rob_capacity();
171 m_max_csm_capacity = source.max_csm_capacity();
172 m_max_lvl1_emu_capacity = source.max_lvl1_emu_capacity();
173 m_max_rpc_hits_capacity = source.max_rpc_hits_capacity();
174 m_max_tgc_hits_capacity = source.max_tgc_hits_capacity();
175 m_max_mdt_hits_capacity = source.max_mdt_hits_capacity();
176
177 copy_variables(*this,source);
178
179 m_chamber_type_1 = source.chamber_type_1();
180 m_chamber_type_2 = source.chamber_type_2();
181 m_pos = source.pos();
182 m_aw = source.aw();
183 m_bw = source.bw();
184 m_zetaMin = source.zetaMin();
185 m_zetaMax = source.zetaMax();
186 m_radMin = source.radMin();
187 m_radMax = source.radMax();
188 m_etaMin = source.etaMin();
189 m_etaMax = source.etaMax();
190 m_st_phi = source.st_phi();
191 m_st_roads = source.st_roads();
192
193 copy_vector(m_extension0, source.extension0(), ext);
194 copy_vector(m_extension1, source.extension1(), ext);
195 copy_vector(m_extension2, source.extension2(), ext);
196 copy_vector(m_extension3, source.extension3(), ext);
197 copy_vector(m_extension4, source.extension4(), ext);
198 copy_vector(m_extension5, source.extension5(), ext);
199 copy_vector(m_extension6, source.extension6(), ext);
200 copy_vector(m_extension7, source.extension7(), ext);
201 copy_vector(m_extension8, source.extension8(), ext);
202 copy_vector(m_extension9, source.extension9(), ext);
203
204 copy_vector(m_lvl1_emulation, source.lvl1_emulation(), lvl1);
205
206 copy_vector(m_rob_id, source.rob_id(), rob);
207 copy_vector(m_csm_id, source.csm_id(), csm);
208 copy_vector(m_csm_size, source.csm_size(), csm);
209 copy_vector(m_csm_error, source.csm_error(), csm);
210 copy_vector(m_removed_rob_id, source.removed_rob_id(), rob);
211 copy_vector(m_removed_csm_id, source.removed_csm_id(), csm);
212
213 copy_vector(m_pad_hit_onlineId, source.pad_hit_onlineId(), rpc);
214 copy_vector(m_pad_hit_code, source.pad_hit_code(), rpc);
215 copy_vector(m_pad_hit_x, source.pad_hit_x(), rpc);
216 copy_vector(m_pad_hit_y, source.pad_hit_y(), rpc);
217 copy_vector(m_pad_hit_z, source.pad_hit_z(), rpc);
218 copy_vector(m_pad_hit_r, source.pad_hit_r(), rpc);
219 copy_vector(m_pad_hit_p, source.pad_hit_p(), rpc);
220
221 copy_vector(m_tgc_Inn_rho_hit_phi, source.tgc_Inn_rho_hit_phi(), tgc);
222 copy_vector(m_tgc_Inn_rho_hit_r, source.tgc_Inn_rho_hit_r(), tgc);
223 copy_vector(m_tgc_Inn_rho_hit_z, source.tgc_Inn_rho_hit_z(), tgc);
224 copy_vector(m_tgc_Inn_rho_hit_width, source.tgc_Inn_rho_hit_width(), tgc);
225 copy_vector(m_tgc_Inn_rho_hit_in_seg, source.tgc_Inn_rho_hit_in_seg(), tgc);
226 copy_vector(m_tgc_Inn_phi_hit_phi, source.tgc_Inn_phi_hit_phi(), tgc);
227 copy_vector(m_tgc_Inn_phi_hit_r, source.tgc_Inn_phi_hit_r(), tgc);
228 copy_vector(m_tgc_Inn_phi_hit_z, source.tgc_Inn_phi_hit_z(), tgc);
229 copy_vector(m_tgc_Inn_phi_hit_width, source.tgc_Inn_phi_hit_width(), tgc);
230 copy_vector(m_tgc_Inn_phi_hit_in_seg, source.tgc_Inn_phi_hit_in_seg(), tgc);
231 copy_vector(m_tgc_Mid_rho_hit_phi, source.tgc_Mid_rho_hit_phi(), tgc);
232 copy_vector(m_tgc_Mid_rho_hit_r, source.tgc_Mid_rho_hit_r(), tgc);
233 copy_vector(m_tgc_Mid_rho_hit_z, source.tgc_Mid_rho_hit_z(), tgc);
234 copy_vector(m_tgc_Mid_rho_hit_width, source.tgc_Mid_rho_hit_width(), tgc);
235 copy_vector(m_tgc_Mid_rho_hit_in_seg, source.tgc_Mid_rho_hit_in_seg(), tgc);
236 copy_vector(m_tgc_Mid_phi_hit_phi, source.tgc_Mid_phi_hit_phi(), tgc);
237 copy_vector(m_tgc_Mid_phi_hit_r, source.tgc_Mid_phi_hit_r(), tgc);
238 copy_vector(m_tgc_Mid_phi_hit_z, source.tgc_Mid_phi_hit_z(), tgc);
239 copy_vector(m_tgc_Mid_phi_hit_width, source.tgc_Mid_phi_hit_width(), tgc);
240 copy_vector(m_tgc_Mid_phi_hit_in_seg, source.tgc_Mid_phi_hit_in_seg(), tgc);
241
242 copy_vector(m_mdt_onlineId, source.mdt_onlineId(), mdt);
243 copy_vector(m_mdt_offlineId, source.mdt_offlineId(), mdt);
244 copy_vector(m_mdt_tube_r, source.mdt_tube_r(), mdt);
245 copy_vector(m_mdt_tube_z, source.mdt_tube_z(), mdt);
246 copy_vector(m_mdt_tube_residual, source.mdt_tube_residual(), mdt);
247 copy_vector(m_mdt_tube_time, source.mdt_tube_time(), mdt);
248 copy_vector(m_mdt_tube_space, source.mdt_tube_space(), mdt);
249 copy_vector(m_mdt_tube_sigma, source.mdt_tube_sigma(), mdt);
250
251 return *this;
252}
253
255
256 m_error = 0x0;
257
258 m_rpc_pad_error = 0x0;
259 m_tgc_rdo_error = 0x0;
260
261 m_rpc1_x = 99999.;
262 m_rpc1_y = 99999.;
263 m_rpc1_z = 99999.;
264
265 m_rpc2_x = 99999.;
266 m_rpc2_y = 99999.;
267 m_rpc2_z = 99999.;
268
269 m_rpc3_x = 99999.;
270 m_rpc3_y = 99999.;
271 m_rpc3_z = 99999.;
272
273 m_tgc_Mid1_eta = 99999.;
274 m_tgc_Mid1_phi = 99999.;
275 m_tgc_Mid1_r = 99999.;
276 m_tgc_Mid1_z = 99999.;
277
278 m_tgc_Mid2_eta = 99999.;
279 m_tgc_Mid2_phi = 99999.;
280 m_tgc_Mid2_r = 99999.;
281 m_tgc_Mid2_z = 99999.;
282
283 m_tgc_Mid_rho_chi2 = -99999.;
284 m_tgc_Mid_rho_N = 0;
285 m_tgc_Mid_phi_chi2 = -99999.;
286 m_tgc_Mid_phi_N = 0;
287
288 m_tgc_Inn_eta = 99999.;
289 m_tgc_Inn_phi = 99999.;
290 m_tgc_Inn_r = 99999.;
291 m_tgc_Inn_z = 99999.;
293 m_tgc_Inn_rho_N = 0;
295 m_tgc_Inn_phi_N = 0;
296
297 m_tgc_PT = 99999.;
298
299 m_type = 99999;
300 m_t_x_center = 99999.;
301 m_t_y_center = 99999.;
302 m_t_radius = 99999.;
303 m_t_ap = 99999.;
304 m_t_aphi = 99999.;
305 m_t_phi = 99999.;
306 m_extrInnerEta = 99999.;
307 m_extrInnerPhi = 99999.;
308
309
310 m_mdt_Inner_slope = 99999.;
311 m_mdt_Inner_intercept = 99999.;
312 m_mdt_Inner_Z = 99999.;
313 m_mdt_Inner_R = 99999.;
314 m_mdt_Inner_fit_chi = -99999.;
315 m_mdt_Middle_slope = 99999.;
316 m_mdt_Middle_intercept = 99999.;
317 m_mdt_Middle_Z = 99999.;
318 m_mdt_Middle_R = 99999.;
319 m_mdt_Middle_fit_chi = -99999.;
320 m_mdt_Outer_slope = 99999.;
321 m_mdt_Outer_intercept = 99999.;
322 m_mdt_Outer_Z = 99999.;
323 m_mdt_Outer_R = 99999.;
324 m_mdt_Outer_fit_chi = -99999.;
325
326 m_Address = 99999;
327 m_Sagitta = 99999.;
328 m_Radius = -99999.;
329 m_Slope = 99999.;
330 m_Intercept = 99999.;
331 m_Alpha = 99999.;
332 m_Beta = 99999.;
333 m_DeltaR = 99999.;
334 m_Speed_over_c = 99999.;
335 m_Eta = 99999.;
336 m_PhiMap = 99999.;
337 m_Phi = 99999.;
338 m_PhiDir = 99999.;
339 m_Pt = 99999.;
340 m_Charge = 99999.;
341}
342
344
345 std::vector< std::vector<int > > vec_int (2, std::vector<int >(4,99999));
346 std::vector< std::vector<float> > vec_float(2, std::vector<float>(4,99999.));
347
348 m_chamber_type_1 = vec_int;
349 m_chamber_type_2 = vec_int;
350 m_pos = std::move(vec_int);
351 m_aw = vec_float;
352 m_bw = vec_float;
353 m_zetaMin = vec_float;
354 m_zetaMax = vec_float;
355 m_radMin = vec_float;
356 m_radMax = vec_float;
357 m_etaMin = vec_float;
358 m_etaMax = vec_float;
359 m_st_phi = vec_float;
360 m_st_roads = std::move(vec_float);
361
363 m_extension0.reserve( (unsigned int)m_extension_capacity);
364 m_extension1.reserve( (unsigned int)m_extension_capacity);
365 m_extension2.reserve( (unsigned int)m_extension_capacity);
366 m_extension3.reserve( (unsigned int)m_extension_capacity);
367 m_extension4.reserve( (unsigned int)m_extension_capacity);
368 m_extension5.reserve( (unsigned int)m_extension_capacity);
369 m_extension6.reserve( (unsigned int)m_extension_capacity);
370 m_extension7.reserve( (unsigned int)m_extension_capacity);
371 m_extension8.reserve( (unsigned int)m_extension_capacity);
372 m_extension9.reserve( (unsigned int)m_extension_capacity);
373 }
374
375 if(m_max_rob_capacity>0) {
376 m_rob_id.reserve( (unsigned int)m_max_rob_capacity);
377 m_removed_rob_id.reserve( (unsigned int)m_max_rob_capacity);
378 }
379
380 if(m_max_csm_capacity>0) {
381 m_csm_id.reserve( (unsigned int)m_max_csm_capacity);
382 m_csm_size.reserve( (unsigned int)m_max_csm_capacity);
383 m_csm_error.reserve( (unsigned int)m_max_csm_capacity);
384 m_removed_csm_id.reserve( (unsigned int)m_max_csm_capacity);
385 }
386
388 m_lvl1_emulation.reserve( (unsigned int)m_max_lvl1_emu_capacity);
389 }
390
392 m_pad_hit_onlineId.reserve( (unsigned int)m_max_rpc_hits_capacity);
393 m_pad_hit_code.reserve( (unsigned int)m_max_rpc_hits_capacity);
394 m_pad_hit_x.reserve( (unsigned int)m_max_rpc_hits_capacity);
395 m_pad_hit_y.reserve( (unsigned int)m_max_rpc_hits_capacity);
396 m_pad_hit_z.reserve( (unsigned int)m_max_rpc_hits_capacity);
397 m_pad_hit_r.reserve( (unsigned int)m_max_rpc_hits_capacity);
398 m_pad_hit_p.reserve( (unsigned int)m_max_rpc_hits_capacity);
399 }
400
402 m_tgc_Inn_rho_hit_phi.reserve( (unsigned int)m_max_tgc_hits_capacity);
403 m_tgc_Inn_rho_hit_r.reserve( (unsigned int)m_max_tgc_hits_capacity);
404 m_tgc_Inn_rho_hit_z.reserve( (unsigned int)m_max_tgc_hits_capacity);
405 m_tgc_Inn_rho_hit_width.reserve( (unsigned int)m_max_tgc_hits_capacity);
407 m_tgc_Inn_phi_hit_phi.reserve( (unsigned int)m_max_tgc_hits_capacity);
408 m_tgc_Inn_phi_hit_r.reserve( (unsigned int)m_max_tgc_hits_capacity);
409 m_tgc_Inn_phi_hit_z.reserve( (unsigned int)m_max_tgc_hits_capacity);
410 m_tgc_Inn_phi_hit_width.reserve( (unsigned int)m_max_tgc_hits_capacity);
412 m_tgc_Mid_rho_hit_phi.reserve( (unsigned int)m_max_tgc_hits_capacity);
413 m_tgc_Mid_rho_hit_r.reserve( (unsigned int)m_max_tgc_hits_capacity);
414 m_tgc_Mid_rho_hit_z.reserve( (unsigned int)m_max_tgc_hits_capacity);
415 m_tgc_Mid_rho_hit_width.reserve( (unsigned int)m_max_tgc_hits_capacity);
417 m_tgc_Mid_phi_hit_phi.reserve( (unsigned int)m_max_tgc_hits_capacity);
418 m_tgc_Mid_phi_hit_r.reserve( (unsigned int)m_max_tgc_hits_capacity);
419 m_tgc_Mid_phi_hit_z.reserve( (unsigned int)m_max_tgc_hits_capacity);
420 m_tgc_Mid_phi_hit_width.reserve( (unsigned int)m_max_tgc_hits_capacity);
422 }
423
425 m_mdt_onlineId.reserve( (unsigned int)m_max_mdt_hits_capacity);
426 m_mdt_offlineId.reserve( (unsigned int)m_max_mdt_hits_capacity);
427 m_mdt_tube_r.reserve( (unsigned int)m_max_mdt_hits_capacity);
428 m_mdt_tube_z.reserve( (unsigned int)m_max_mdt_hits_capacity);
429 m_mdt_tube_residual.reserve( (unsigned int)m_max_mdt_hits_capacity);
430 m_mdt_tube_time.reserve( (unsigned int)m_max_mdt_hits_capacity);
431 m_mdt_tube_space.reserve( (unsigned int)m_max_mdt_hits_capacity);
432 m_mdt_tube_sigma.reserve( (unsigned int)m_max_mdt_hits_capacity);
433 }
434}
435
437 const MuonFeatureDetails& source) {
438
439 destination.m_id = source.id();
440 destination.m_te_id = source.te_id();
441 destination.m_error = source.error();
442
443 destination.m_lvl1_id = source.lvl1_id();
444 destination.m_lumi_block = source.lumi_block();
445 destination.m_muondetmask = source.muondetmask();
446 destination.m_RoIID = source.roi_id();
447 destination.m_RoISystem = source.roi_system();
448 destination.m_RoISubsystem = source.roi_subsystem();
449 destination.m_RoISector = source.roi_sector();
450 destination.m_RoINumber = source.roi_number();
451 destination.m_RoIThreshold = source.roi_threshold();
452 destination.m_RoIEta = source.roi_eta();
453 destination.m_RoIPhi = source.roi_phi();
454
455 destination.m_rpc_pad_error = source.rpc_pad_error();
456 destination.m_tgc_rdo_error = source.tgc_rdo_error();
457
458 destination.m_rpc1_x = source.rpc1_x();
459 destination.m_rpc1_y = source.rpc1_y();
460 destination.m_rpc1_z = source.rpc1_z();
461
462 destination.m_rpc2_x = source.rpc2_x();
463 destination.m_rpc2_y = source.rpc2_y();
464 destination.m_rpc2_z = source.rpc2_z();
465
466 destination.m_rpc3_x = source.rpc3_x();
467 destination.m_rpc3_y = source.rpc3_y();
468 destination.m_rpc3_z = source.rpc3_z();
469
470 destination.m_tgc_Mid1_eta = source.tgc_Mid1_eta();
471 destination.m_tgc_Mid1_phi = source.tgc_Mid1_phi();
472 destination.m_tgc_Mid1_r = source.tgc_Mid1_r();
473 destination.m_tgc_Mid1_z = source.tgc_Mid1_z();
474
475 destination.m_tgc_Mid2_eta = source.tgc_Mid2_eta();
476 destination.m_tgc_Mid2_phi = source.tgc_Mid2_phi();
477 destination.m_tgc_Mid2_r = source.tgc_Mid2_r();
478 destination.m_tgc_Mid2_z = source.tgc_Mid2_z();
479
480 destination.m_tgc_Mid_rho_chi2 = source.tgc_Mid_rho_chi2();
481 destination.m_tgc_Mid_rho_N = source.tgc_Mid_rho_N();
482 destination.m_tgc_Mid_phi_chi2 = source.tgc_Mid_phi_chi2();
483 destination.m_tgc_Mid_phi_N = source.tgc_Mid_phi_N();
484
485 destination.m_tgc_Inn_eta = source.tgc_Inn_eta();
486 destination.m_tgc_Inn_phi = source.tgc_Inn_phi();
487 destination.m_tgc_Inn_r = source.tgc_Inn_r();
488 destination.m_tgc_Inn_z = source.tgc_Inn_z();
489 destination.m_tgc_Inn_rho_std = source.tgc_Inn_rho_std();
490 destination.m_tgc_Inn_rho_N = source.tgc_Inn_rho_N();
491 destination.m_tgc_Inn_phi_std = source.tgc_Inn_phi_std();
492 destination.m_tgc_Inn_phi_N = source.tgc_Inn_phi_N();
493
494 destination.m_tgc_PT = source.tgc_PT();
495
496 destination.m_type = source.type();
497 destination.m_t_x_center = source.t_x_center();
498 destination.m_t_y_center = source.t_y_center();
499 destination.m_t_radius = source.t_radius();
500 destination.m_t_ap = source.t_ap();
501 destination.m_t_aphi = source.t_aphi();
502 destination.m_t_phi = source.t_phi();
503 destination.m_extrInnerEta = source.extrInnerEta();
504 destination.m_extrInnerPhi = source.extrInnerPhi();
505
506 destination.m_mdt_Inner_slope = source.mdt_Inner_slope();
507 destination.m_mdt_Inner_intercept = source.mdt_Inner_intercept();
508 destination.m_mdt_Inner_Z = source.mdt_Inner_Z();
509 destination.m_mdt_Inner_R = source.mdt_Inner_R();
510 destination.m_mdt_Inner_fit_chi = source.mdt_Inner_fit_chi();
511 destination.m_mdt_Middle_slope = source.mdt_Middle_slope();
512 destination.m_mdt_Middle_intercept = source.mdt_Middle_intercept();
513 destination.m_mdt_Middle_Z = source.mdt_Middle_Z();
514 destination.m_mdt_Middle_R = source.mdt_Middle_R();
515 destination.m_mdt_Middle_fit_chi = source.mdt_Middle_fit_chi();
516 destination.m_mdt_Outer_slope = source.mdt_Outer_slope();
517 destination.m_mdt_Outer_intercept = source.mdt_Outer_intercept();
518 destination.m_mdt_Outer_Z = source.mdt_Outer_Z();
519 destination.m_mdt_Outer_R = source.mdt_Outer_R();
520 destination.m_mdt_Outer_fit_chi = source.mdt_Outer_fit_chi();
521
522 destination.m_Address = source.Address();
523 destination.m_Sagitta = source.Sagitta();
524 destination.m_Radius = source.Radius();
525 destination.m_Slope = source.Slope();
526 destination.m_Intercept = source.Intercept();
527 destination.m_Alpha = source.Alpha();
528 destination.m_Beta = source.Beta();
529 destination.m_DeltaR = source.DeltaR();
530 destination.m_Speed_over_c = source.Speed_over_c();
531 destination.m_Eta = source.Eta();
532 destination.m_PhiMap = source.PhiMap();
533 destination.m_Phi = source.Phi();
534 destination.m_PhiDir = source.PhiDir();
535 destination.m_Pt = source.Pt();
536 destination.m_Charge = source.Charge();
537}
538
539template <class T>
540void MuonFeatureDetails::copy_vector(std::vector<T>& dest,
541 const std::vector<T>& source,
542 int resize) {
543 if (resize>=0) {
544 std::vector<T> v;
545 if (resize>0) v.reserve(resize);
546 dest.swap(v);
547 }
548 dest = source;
549
550}
551
552 void MuonFeatureDetails::setError(uint32_t err) {m_error = err;}
555 void MuonFeatureDetails::setTgcPt(float tgc_pt) {m_tgc_PT = tgc_pt;}
556 void MuonFeatureDetails::setAddress(int address) {m_Address = address;}
557 void MuonFeatureDetails::setSagitta(float sagitta) {m_Sagitta = sagitta;}
558 void MuonFeatureDetails::setRadius(float radius) {m_Radius = radius;}
559 void MuonFeatureDetails::setSlope(float slope) {m_Slope = slope;}
560 void MuonFeatureDetails::setIntercept(float intercept) {m_Intercept = intercept;}
561 void MuonFeatureDetails::setAlpha(float alpha) {m_Alpha = alpha;}
562 void MuonFeatureDetails::setBeta(float beta) {m_Beta = beta;}
566 void MuonFeatureDetails::setPhiMap(float phimap) {m_PhiMap = phimap;}
568 void MuonFeatureDetails::setPhiDir(float dir_phi) {m_PhiDir = dir_phi;}
569 void MuonFeatureDetails::setPt(float pt) {m_Pt = pt;}
571
572 void MuonFeatureDetails::setRpc1(float x, float y, float z) {
573 m_rpc1_x = x;
574 m_rpc1_y = y;
575 m_rpc1_z = z;
576}
577
578 void MuonFeatureDetails::setRpc2(float x, float y, float z) {
579 m_rpc2_x = x;
580 m_rpc2_y = y;
581 m_rpc2_z = z;
582}
583
584 void MuonFeatureDetails::setRpc3(float x, float y, float z) {
585 m_rpc3_x = x;
586 m_rpc3_y = y;
587 m_rpc3_z = z;
588}
589
590 void MuonFeatureDetails::setTgcMid1(float Mid1_eta, float Mid1_phi,
591 float Mid1_r, float Mid1_z) {
592 m_tgc_Mid1_eta = Mid1_eta;
593 m_tgc_Mid1_phi = Mid1_phi;
594 m_tgc_Mid1_r = Mid1_r;
595 m_tgc_Mid1_z = Mid1_z;
596}
597
598 void MuonFeatureDetails::setTgcMid2(float Mid2_eta, float Mid2_phi,
599 float Mid2_r, float Mid2_z) {
600 m_tgc_Mid2_eta = Mid2_eta;
601 m_tgc_Mid2_phi = Mid2_phi;
602 m_tgc_Mid2_r = Mid2_r;
603 m_tgc_Mid2_z = Mid2_z;
604}
605
606 void MuonFeatureDetails::setTgcMidF(float rho_chi2, long rho_n,
607 float phi_chi2, long phi_n) {
608 m_tgc_Mid_rho_chi2 = rho_chi2;
609 m_tgc_Mid_rho_N = rho_n;
610 m_tgc_Mid_phi_chi2 = phi_chi2;
611 m_tgc_Mid_phi_N = phi_n;
612}
613
614 void MuonFeatureDetails::setTgcInn (float Inn_eta, float Inn_phi,
615 float Inn_r, float Inn_z) {
616 m_tgc_Inn_eta = Inn_eta;
617 m_tgc_Inn_phi = Inn_phi;
618 m_tgc_Inn_r = Inn_r;
619 m_tgc_Inn_z = Inn_z;
620}
621
622 void MuonFeatureDetails::setTgcInnF(float rho_std, long rho_n,
623 float phi_std, long phi_n) {
624 m_tgc_Inn_rho_std = rho_std;
625 m_tgc_Inn_rho_N = rho_n;
626 m_tgc_Inn_phi_std = phi_std;
627 m_tgc_Inn_phi_N = phi_n;
628}
629
630
631
636 void MuonFeatureDetails::setT_ap(float ap) {m_t_ap = ap;}
637 void MuonFeatureDetails::setT_aphi(float aphi) {m_t_aphi = aphi;}
641
642 void MuonFeatureDetails::setChamber_type_1(int tr, int st, int ty) {
643 if (tr<0 || tr>1) return;
644 if (st<0 || st>3) return;
645 m_chamber_type_1[tr][st] = ty;
646 }
647
648 void MuonFeatureDetails::setChamber_type_1(const std::vector< std::vector<int> >& v)
649 {
651 }
652
653 void MuonFeatureDetails::setChamber_type_2(int tr, int st, int ty){
654 if (tr<0 || tr>1) return;
655 if (st<0 || st>3) return;
656 m_chamber_type_2[tr][st] = ty;
657 }
658
659 void MuonFeatureDetails::setChamber_type_2(const std::vector< std::vector<int> >& v)
660 {
662 }
663
664 void MuonFeatureDetails::setPos(int tr, int st, int pos){
665 if (tr<0 || tr>1) return;
666 if (st<0 || st>3) return;
667 m_pos[tr][st] = pos;
668 }
669
670 void MuonFeatureDetails::setPos(const std::vector< std::vector<int> >& v)
671 {
672 m_pos = v;
673 }
674
675 void MuonFeatureDetails::setAw(int tr, int st, float aw){
676 if (tr<0 || tr>1) return;
677 if (st<0 || st>3) return;
678 m_aw[tr][st] = aw;
679 }
680
681 void MuonFeatureDetails::setAw(const std::vector< std::vector<float> >& v)
682 {
683 m_aw = v;
684 }
685
686 void MuonFeatureDetails::setBw(int tr, int st, float bw){
687 if (tr<0 || tr>1) return;
688 if (st<0 || st>3) return;
689 m_bw[tr][st] = bw;
690 }
691
692 void MuonFeatureDetails::setBw(const std::vector< std::vector<float> >& v)
693 {
694 m_bw = v;
695 }
696
697 void MuonFeatureDetails::setZetaMin(int tr, int st, float min){
698 if (tr<0 || tr>1) return;
699 if (st<0 || st>3) return;
700 m_zetaMin[tr][st] = min;
701 }
702
703 void MuonFeatureDetails::setZetaMin(const std::vector< std::vector<float> >& v)
704 {
705 m_zetaMin = v;
706 }
707
708 void MuonFeatureDetails::setZetaMax(int tr, int st, float max){
709 if (tr<0 || tr>1) return;
710 if (st<0 || st>3) return;
711 m_zetaMax[tr][st] = max;
712 }
713
714 void MuonFeatureDetails::setZetaMax(const std::vector< std::vector<float> >& v)
715 {
716 m_zetaMax = v;
717 }
718
719 void MuonFeatureDetails::setRadMin (int tr, int st, float min){
720 if (tr<0 || tr>1) return;
721 if (st<0 || st>3) return;
722 m_radMin[tr][st] = min;
723 }
724
725 void MuonFeatureDetails::setRadMin(const std::vector< std::vector<float> >& v)
726 {
727 m_radMin = v;
728 }
729
730 void MuonFeatureDetails::setRadMax (int tr, int st, float max){
731 if (tr<0 || tr>1) return;
732 if (st<0 || st>3) return;
733 m_radMax[tr][st] = max;
734 }
735
736 void MuonFeatureDetails::setRadMax(const std::vector< std::vector<float> >& v)
737 {
738 m_radMax = v;
739 }
740
741 void MuonFeatureDetails::setEtaMin (int tr, int st, float min){
742 if (tr<0 || tr>1) return;
743 if (st<0 || st>3) return;
744 m_etaMin[tr][st] = min;
745 }
746
747 void MuonFeatureDetails::setEtaMin(const std::vector< std::vector<float> >& v)
748 {
749 m_etaMin = v;
750 }
751
752 void MuonFeatureDetails::setEtaMax (int tr, int st, float max){
753 if (tr<0 || tr>1) return;
754 if (st<0 || st>3) return;
755 m_etaMax[tr][st] = max;
756 }
757
758 void MuonFeatureDetails::setEtaMax(const std::vector< std::vector<float> >& v)
759 {
760 m_etaMax = v;
761 }
762
763 void MuonFeatureDetails::setSt_phi (int tr, int st, float phi){
764 if (tr<0 || tr>1) return;
765 if (st<0 || st>3) return;
766 m_st_phi[tr][st] = phi;
767 }
768
769 void MuonFeatureDetails::setSt_phi(const std::vector< std::vector<float> >& v)
770 {
771 m_st_phi = v;
772 }
773
774 void MuonFeatureDetails::setSt_roads(int tr, int st, float road){
775 if (tr<0 || tr>1) return;
776 if (st<0 || st>3) return;
777 m_st_roads[tr][st] = road;
778 }
779
780 void MuonFeatureDetails::setSt_roads(const std::vector< std::vector<float> >& v)
781 {
782 m_st_roads = v;
783 }
784
785 void MuonFeatureDetails::setEtaPivot(uint32_t ly0, uint32_t ly1) {
786 if(m_max_lvl1_emu_capacity==0) return;
787 if(m_lvl1_emulation.size() < 2) m_lvl1_emulation.resize(2);
788 uint32_t myarray [] = { ly0,ly1 };
789 m_lvl1_emulation.insert(m_lvl1_emulation.begin(),myarray,myarray+2);
790}
791
792 void MuonFeatureDetails::setEtaLow (uint32_t ly00, uint32_t ly01,
793 uint32_t ly10, uint32_t ly11) {
794 if(m_max_lvl1_emu_capacity==0) return;
795 if(m_lvl1_emulation.size() < 6) m_lvl1_emulation.resize(6);
796 uint32_t myarray [] = { ly00,ly01,ly10,ly11 };
797 m_lvl1_emulation.insert(m_lvl1_emulation.begin()+2,myarray,myarray+4);
798}
799
800 void MuonFeatureDetails::setEtaHigh(uint32_t ly00, uint32_t ly01,
801 uint32_t ly10, uint32_t ly11) {
802 if(m_max_lvl1_emu_capacity==0) return;
803 if(m_lvl1_emulation.size() < 10) m_lvl1_emulation.resize(10);
804 uint32_t myarray [] = { ly00,ly01,ly10,ly11 };
805 m_lvl1_emulation.insert(m_lvl1_emulation.begin()+6,myarray,myarray+4);
806
807}
808
809 void MuonFeatureDetails::setPhiPivot(uint32_t ly0, uint32_t ly1) {
810 if(m_max_lvl1_emu_capacity==0) return;
811 if(m_lvl1_emulation.size() < 12) m_lvl1_emulation.resize(12);
812 uint32_t myarray [] = { ly0,ly1 };
813 m_lvl1_emulation.insert(m_lvl1_emulation.begin(),myarray,myarray+2);
814}
815
816 void MuonFeatureDetails::setPhiLow (uint32_t ly00, uint32_t ly01,
817 uint32_t ly10, uint32_t ly11) {
818 if(m_max_lvl1_emu_capacity==0) return;
819 if(m_lvl1_emulation.size() < 16) m_lvl1_emulation.resize(16);
820 uint32_t myarray [] = { ly00,ly01,ly10,ly11 };
821 m_lvl1_emulation.insert(m_lvl1_emulation.begin()+12,myarray,myarray+4);
822}
823
824 void MuonFeatureDetails::setPhiHigh(uint32_t ly00, uint32_t ly01,
825 uint32_t ly10, uint32_t ly11) {
826 if(m_max_lvl1_emu_capacity==0) return;
827 if(m_lvl1_emulation.size() < 20) m_lvl1_emulation.resize(20);
828 uint32_t myarray [] = { ly00,ly01,ly10,ly11 };
829 m_lvl1_emulation.insert(m_lvl1_emulation.begin()+16,myarray,myarray+4);
830}
831
832 void MuonFeatureDetails::setLvl1Emulation (const std::vector<uint32_t>& v)
833 {
835 }
836
837 void MuonFeatureDetails::setSP1(float slope,float intercept,float z,float r,float chisquare){
838 m_mdt_Inner_slope = slope;
839 m_mdt_Inner_intercept = intercept;
842 m_mdt_Inner_fit_chi = chisquare;
843}
844
845 void MuonFeatureDetails::setSP2(float slope,float intercept,float z,float r,float chisquare){
846 m_mdt_Middle_slope = slope;
847 m_mdt_Middle_intercept = intercept;
850 m_mdt_Middle_fit_chi = chisquare;
851}
852
853 void MuonFeatureDetails::setSP3(float slope,float intercept,float z,float r,float chisquare){
854 m_mdt_Outer_slope = slope;
855 m_mdt_Outer_intercept = intercept;
858 m_mdt_Outer_fit_chi = chisquare;
859}
860
861 void MuonFeatureDetails::setPadHit(uint32_t onlineId, uint32_t code,
862 float x, float y, float z, float r, float p) {
864 if (m_pad_hit_onlineId.size() == (unsigned int)m_max_rpc_hits_capacity) return;
865
866 m_pad_hit_onlineId.push_back(onlineId);
867 m_pad_hit_code.push_back(code);
868 m_pad_hit_x.push_back(x);
869 m_pad_hit_y.push_back(y);
870 m_pad_hit_z.push_back(z);
871 m_pad_hit_r.push_back(r);
872 m_pad_hit_p.push_back(p);
873}
874
876 float width, uint32_t in_seg) {
878 if(m_tgc_Mid_rho_hit_phi.size() == (unsigned int)m_max_tgc_hits_capacity) return;
879
880 m_tgc_Mid_rho_hit_phi.push_back(phi);
881 m_tgc_Mid_rho_hit_r.push_back(r);
882 m_tgc_Mid_rho_hit_z.push_back(z);
884 m_tgc_Mid_rho_hit_in_seg.push_back(in_seg);
885}
886
888 float width, uint32_t in_seg) {
890 if(m_tgc_Mid_rho_hit_phi.size() == (unsigned int)m_max_tgc_hits_capacity) return;
891
892 m_tgc_Mid_phi_hit_phi.push_back(phi);
893 m_tgc_Mid_phi_hit_r.push_back(r);
894 m_tgc_Mid_phi_hit_z.push_back(z);
896 m_tgc_Mid_phi_hit_in_seg.push_back(in_seg);
897}
898
900 float width, uint32_t in_seg) {
902 if(m_tgc_Inn_rho_hit_phi.size() == (unsigned int)m_max_tgc_hits_capacity) return;
903
904 m_tgc_Inn_rho_hit_phi.push_back(phi);
905 m_tgc_Inn_rho_hit_r.push_back(r);
906 m_tgc_Inn_rho_hit_z.push_back(z);
908 m_tgc_Inn_rho_hit_in_seg.push_back(in_seg);
909}
910
912 float width, uint32_t in_seg) {
914 if(m_tgc_Inn_phi_hit_phi.size() == (unsigned int)m_max_tgc_hits_capacity) return;
915
916 m_tgc_Inn_phi_hit_phi.push_back(phi);
917 m_tgc_Inn_phi_hit_r.push_back(r);
918 m_tgc_Inn_phi_hit_z.push_back(z);
920 m_tgc_Inn_phi_hit_in_seg.push_back(in_seg);
921}
922
923
924 void MuonFeatureDetails::setMdtHit(uint32_t onlineId, uint32_t offlineId,
925 float r, float z, float residual, float time, float space, float sigma) {
927 if(m_mdt_onlineId.size() == (unsigned int)m_max_mdt_hits_capacity) return;
928
929 m_mdt_onlineId.push_back(onlineId);
930 m_mdt_offlineId.push_back(offlineId);
931 m_mdt_tube_r.push_back(r);
932 m_mdt_tube_z.push_back(z);
933 m_mdt_tube_residual.push_back(residual);
934 m_mdt_tube_time.push_back(time);
935 m_mdt_tube_space.push_back(space);
936 m_mdt_tube_sigma.push_back(sigma);
937}
938
940 if (m_max_rob_capacity >= 0)
941 if(m_rob_id.size() == (unsigned int)m_max_rob_capacity) return;
942
943 m_rob_id.push_back(rob);
944}
945
946 void MuonFeatureDetails::setRequestedRob(const std::vector<uint32_t>& v)
947 {
948 m_rob_id = v;
949 }
950
951 void MuonFeatureDetails::setConvertedCsm(uint32_t csm, uint32_t sz) {
952 if (m_max_csm_capacity >= 0)
953 if(m_csm_id.size() == (unsigned int)m_max_csm_capacity) return;
954
955 m_csm_id.push_back(csm);
956 m_csm_size.push_back(sz);
957}
958
959 void MuonFeatureDetails::setConvertedCsm(const std::vector<uint32_t>& v)
960 {
961 m_csm_id = v;
962 }
963
964 void MuonFeatureDetails::setConvertedCsmSize(const std::vector<uint32_t>& v)
965 {
966 m_csm_size = v;
967 }
968
970 if (m_max_csm_capacity >= 0)
971 if(m_csm_error.size() == (unsigned int)m_max_csm_capacity) return;
972
973 m_csm_error.push_back(err);
974}
975
976
977 void MuonFeatureDetails::setCsmError(const std::vector<uint32_t>& v)
978 {
979 m_csm_error = v;
980 }
981
983 if (m_max_rob_capacity >= 0)
984 if(m_removed_rob_id.size() == (unsigned int)m_max_rob_capacity) return;
985
986 m_removed_rob_id.push_back(rob);
987}
988
989 void MuonFeatureDetails::setRemovedRob(const std::vector<uint32_t>& v)
990 {
992 }
993
995 if (m_max_csm_capacity >= 0)
996 if(m_removed_csm_id.size() == (unsigned int)m_max_csm_capacity) return;
997
998 m_removed_csm_id.push_back(csm);
999}
1000
1001 void MuonFeatureDetails::setRemovedCsm(const std::vector<uint32_t>& v)
1002 {
1003 m_removed_csm_id = v;
1004 }
1005
1007 if (m_extension_capacity >= 0)
1008 if(m_extension0.size() == (unsigned int)m_extension_capacity) return;
1009 m_extension0.push_back(ext);
1010}
1011
1012 void MuonFeatureDetails::setExtension0(const std::vector<uint32_t>& v)
1013 {
1014 m_extension0 = v;
1015 }
1016
1018 if (m_extension_capacity >= 0)
1019 if(m_extension1.size() == (unsigned int)m_extension_capacity) return;
1020 m_extension1.push_back(ext);
1021}
1022
1023 void MuonFeatureDetails::setExtension1(const std::vector<uint32_t>& v)
1024 {
1025 m_extension1 = v;
1026 }
1027
1029 if (m_extension_capacity >= 0)
1030 if(m_extension2.size() == (unsigned int)m_extension_capacity) return;
1031 m_extension2.push_back(ext);
1032}
1033
1034 void MuonFeatureDetails::setExtension2(const std::vector<uint32_t>& v)
1035 {
1036 m_extension2 = v;
1037 }
1038
1040 if (m_extension_capacity >= 0)
1041 if(m_extension3.size() == (unsigned int)m_extension_capacity) return;
1042 m_extension3.push_back(ext);
1043}
1044
1045 void MuonFeatureDetails::setExtension3(const std::vector<uint32_t>& v)
1046 {
1047 m_extension3 = v;
1048 }
1049
1051 if (m_extension_capacity >= 0)
1052 if(m_extension4.size() == (unsigned int)m_extension_capacity) return;
1053 m_extension4.push_back(ext);
1054}
1055
1056 void MuonFeatureDetails::setExtension4(const std::vector<uint32_t>& v)
1057 {
1058 m_extension4 = v;
1059 }
1060
1062 if (m_extension_capacity >= 0)
1063 if(m_extension5.size() == (unsigned int)m_extension_capacity) return;
1064 m_extension5.push_back(ext);
1065}
1066
1067 void MuonFeatureDetails::setExtension5(const std::vector<uint32_t>& v)
1068 {
1069 m_extension5 = v;
1070 }
1071
1073 if (m_extension_capacity >= 0)
1074 if(m_extension6.size() == (unsigned int)m_extension_capacity) return;
1075 m_extension6.push_back(ext);
1076}
1077
1078 void MuonFeatureDetails::setExtension6(const std::vector<uint32_t>& v)
1079 {
1080 m_extension6 = v;
1081 }
1082
1084 if (m_extension_capacity >= 0)
1085 if(m_extension7.size() == (unsigned int)m_extension_capacity) return;
1086 m_extension7.push_back(ext);
1087}
1088
1089 void MuonFeatureDetails::setExtension7(const std::vector<uint32_t>& v)
1090 {
1091 m_extension7 = v;
1092 }
1093
1095 if (m_extension_capacity >= 0)
1096 if(m_extension8.size() == (unsigned int)m_extension_capacity) return;
1097 m_extension8.push_back(ext);
1098}
1099
1100 void MuonFeatureDetails::setExtension8(const std::vector<uint32_t>& v)
1101 {
1102 m_extension8 = v;
1103 }
1104
1106 if (m_extension_capacity >= 0)
1107 if(m_extension9.size() == (unsigned int)m_extension_capacity) return;
1108 m_extension9.push_back(ext);
1109}
1110
1111 void MuonFeatureDetails::setExtension9(const std::vector<uint32_t>& v)
1112 {
1113 m_extension9 = v;
1114 }
1115
1117 bool result = true;
1118 result &= (m_Address == d.Address() );
1119 result &= (fabs (m_Sagitta - d.Sagitta()) < 0.01);
1120 result &= (fabs (m_Radius - d.Radius()) < 0.01);
1121 result &= (fabs (m_Slope - d.Slope()) < 0.01);
1122 result &= (fabs (m_Intercept - d.Intercept()) < 0.01);
1123 result &= (fabs (m_Alpha - d.Alpha()) < 0.01);
1124 result &= (fabs (m_Beta - d.Beta()) < 0.01);
1125 result &= (fabs (m_DeltaR - d.DeltaR()) < 0.01);
1126 result &= (fabs (m_Speed_over_c - d.Speed_over_c()) < 0.01);
1127 result &= (fabs (m_Phi - d.Phi()) < 0.01);
1128 result &= (fabs (m_PhiDir - d.PhiDir()) < 0.01);
1129 return result;
1130}
1131
1133 bool result = hasSameTrackReco(d);
1134 result &= (fabs (m_Eta - d.Eta()) < 0.01);
1135 result &= (fabs (m_Phi - d.Phi()) < 0.01);
1136 result &= (fabs (m_Pt - d.Pt()) < 0.01);
1137 result &= (fabs (m_Charge - d.Charge()) < 0.01);
1138 return result;
1139}
1140
1142 bool result = true;
1143 result &= (m_lvl1_id == d.lvl1_id() );
1144 result &= (m_lumi_block == d.lumi_block() );
1145 result &= (m_RoIID == d.roi_id() );
1146 result &= (m_RoISystem == d.roi_system() );
1147 result &= (m_RoISubsystem == d.roi_subsystem());
1148 result &= (m_RoISector == d.roi_sector() );
1149 result &= (m_RoINumber == d.roi_number() );
1150 result &= (m_RoIThreshold == d.roi_threshold() );
1151 return result;
1152}
1153
1155 return (m_id == d.id() ) && this->hasSameContentOf(d);
1156}
1157
1159 bool result = true;
1160
1161 result &= (m_te_id == d.te_id() );
1162 result &= (m_error == d.error() );
1163
1164
1165 result &= (m_lvl1_id == d.lvl1_id() );
1166 result &= (m_lumi_block == d.lumi_block() );
1167 result &= (m_muondetmask == d.muondetmask() );
1168 result &= (m_RoIID == d.roi_id() );
1169 result &= (m_RoISystem == d.roi_system() );
1170 result &= (m_RoISubsystem == d.roi_subsystem());
1171 result &= (m_RoISector == d.roi_sector() );
1172 result &= (m_RoINumber == d.roi_number() );
1173 result &= (m_RoIThreshold == d.roi_threshold() );
1174 result &= (m_RoIEta == d.roi_eta() );
1175 result &= (m_RoIPhi == d.roi_phi() );
1176
1177 result &= (m_rpc_pad_error == d.rpc_pad_error() );
1178 result &= (m_tgc_rdo_error == d.tgc_rdo_error() );
1179
1180 result &= (m_rpc1_x == d.rpc1_x() );
1181 result &= (m_rpc1_y == d.rpc1_y() );
1182 result &= (m_rpc1_z == d.rpc1_z() );
1183
1184 result &= (m_rpc2_x == d.rpc2_x() );
1185 result &= (m_rpc2_y == d.rpc2_y() );
1186 result &= (m_rpc2_z == d.rpc2_z() );
1187
1188 result &= (m_rpc3_x == d.rpc3_x() );
1189 result &= (m_rpc3_y == d.rpc3_y() );
1190 result &= (m_rpc3_z == d.rpc3_z() );
1191
1192 result &= (m_tgc_Mid1_eta == d.tgc_Mid1_eta() );
1193 result &= (m_tgc_Mid1_phi == d.tgc_Mid1_phi() );
1194 result &= (m_tgc_Mid1_r == d.tgc_Mid1_r() );
1195 result &= (m_tgc_Mid1_z == d.tgc_Mid1_z() );
1196
1197 result &= (m_tgc_Mid2_eta == d.tgc_Mid2_eta() );
1198 result &= (m_tgc_Mid2_phi == d.tgc_Mid2_phi() );
1199 result &= (m_tgc_Mid2_r == d.tgc_Mid2_r() );
1200 result &= (m_tgc_Mid2_z == d.tgc_Mid2_z() );
1201
1202 result &= (m_tgc_Mid_rho_chi2 == d.tgc_Mid_rho_chi2() );
1203 result &= (m_tgc_Mid_rho_N == d.tgc_Mid_rho_N() );
1204 result &= (m_tgc_Mid_phi_chi2 == d.tgc_Mid_phi_chi2() );
1205 result &= (m_tgc_Mid_phi_N == d.tgc_Mid_phi_N() );
1206
1207 result &= (m_tgc_Inn_eta == d.tgc_Inn_eta() );
1208 result &= (m_tgc_Inn_phi == d.tgc_Inn_phi() );
1209 result &= (m_tgc_Inn_r == d.tgc_Inn_r() );
1210 result &= (m_tgc_Inn_z == d.tgc_Inn_z() );
1211 result &= (m_tgc_Inn_rho_std == d.tgc_Inn_rho_std() );
1212 result &= (m_tgc_Inn_rho_N == d.tgc_Inn_rho_N() );
1213 result &= (m_tgc_Inn_phi_std == d.tgc_Inn_phi_std () );
1214 result &= (m_tgc_Inn_phi_N == d.tgc_Inn_phi_N() );
1215
1216 result &= (m_tgc_PT == d.tgc_PT() );
1217
1218 result &= (m_type == d.type() );
1219 result &= (m_t_x_center == d.t_x_center() );
1220 result &= (m_t_y_center == d.t_y_center() );
1221 result &= (m_t_radius == d.t_radius() );
1222 result &= (m_t_ap == d.t_ap() );
1223 result &= (m_t_aphi == d.t_aphi() );
1224 result &= (m_t_phi == d.t_phi() );
1225 result &= (m_extrInnerEta == d.extrInnerEta() );
1226 result &= (m_extrInnerPhi == d.extrInnerPhi() );
1227
1228 result &= (m_chamber_type_1 == d.chamber_type_1() );
1229 result &= (m_chamber_type_2 == d.chamber_type_2() );
1230 result &= (m_pos == d.pos() );
1231 result &= (m_aw == d.aw() );
1232 result &= (m_bw == d.bw() );
1233 result &= (m_zetaMin == d.zetaMin() );
1234 result &= (m_zetaMax == d.zetaMax() );
1235 result &= (m_radMin == d.radMin() );
1236 result &= (m_radMax == d.radMax() );
1237 result &= (m_etaMin == d.etaMin() );
1238 result &= (m_etaMax == d.etaMax() );
1239 result &= (m_st_phi == d.st_phi() );
1240 result &= (m_st_roads == d.st_roads() );
1241
1242
1243 result &= (m_mdt_Inner_slope == d.mdt_Inner_slope() );
1244 result &= (m_mdt_Inner_intercept == d.mdt_Inner_intercept() );
1245 result &= (m_mdt_Inner_Z == d.mdt_Inner_Z() );
1246 result &= (m_mdt_Inner_R == d.mdt_Inner_R() );
1247 result &= (m_mdt_Inner_fit_chi == d.mdt_Inner_fit_chi() );
1248 result &= (m_mdt_Middle_slope == d.mdt_Middle_slope() );
1249 result &= (m_mdt_Middle_intercept == d.mdt_Middle_intercept() );
1250 result &= (m_mdt_Middle_Z == d.mdt_Middle_Z() );
1251 result &= (m_mdt_Middle_R == d.mdt_Middle_R() );
1252 result &= (m_mdt_Middle_fit_chi == d.mdt_Middle_fit_chi() );
1253 result &= (m_mdt_Outer_slope == d.mdt_Outer_slope() );
1254 result &= (m_mdt_Outer_intercept == d.mdt_Outer_intercept() );
1255 result &= (m_mdt_Outer_Z == d.mdt_Outer_Z() );
1256 result &= (m_mdt_Outer_R == d.mdt_Outer_R() );
1257 result &= (m_mdt_Outer_fit_chi == d.mdt_Outer_fit_chi() );
1258
1259 result &= (m_Address == d.Address() );
1260 result &= (m_Sagitta == d.Sagitta() );
1261 result &= (m_Radius == d.Radius() );
1262 result &= (m_Slope == d.Slope() );
1263 result &= (m_Intercept == d.Intercept() );
1264 result &= (m_Alpha == d.Alpha() );
1265 result &= (m_Beta == d.Beta() );
1266 result &= (m_DeltaR == d.DeltaR() );
1267 result &= (m_Speed_over_c == d.Speed_over_c() );
1268 result &= (m_Eta == d.Eta() );
1269 result &= (m_PhiMap == d.PhiMap() );
1270 result &= (m_Phi == d.Phi() );
1271 result &= (m_PhiDir == d.PhiDir() );
1272 result &= (m_Pt == d.Pt() );
1273 result &= (m_Charge == d.Charge() );
1274
1275 result &= (m_extension0 == d.extension0() );
1276 result &= (m_extension1 == d.extension1() );
1277 result &= (m_extension2 == d.extension2() );
1278 result &= (m_extension3 == d.extension3() );
1279 result &= (m_extension4 == d.extension4() );
1280 result &= (m_extension5 == d.extension5() );
1281 result &= (m_extension6 == d.extension6() );
1282 result &= (m_extension7 == d.extension7() );
1283 result &= (m_extension8 == d.extension8() );
1284 result &= (m_extension9 == d.extension9() );
1285
1286 result &= (m_lvl1_emulation == d.lvl1_emulation() );
1287
1288 result &= (m_rob_id == d.rob_id() );
1289 result &= (m_csm_id == d.csm_id() );
1290 result &= (m_csm_size == d.csm_size() );
1291 result &= (m_csm_error == d.csm_error() );
1292 result &= (m_removed_rob_id == d.removed_rob_id() );
1293 result &= (m_removed_csm_id == d.removed_csm_id() );
1294
1295 result &= (m_pad_hit_onlineId == d.pad_hit_onlineId() );
1296 result &= (m_pad_hit_code == d.pad_hit_code() );
1297 result &= (m_pad_hit_x == d.pad_hit_x() );
1298 result &= (m_pad_hit_y == d.pad_hit_y() );
1299 result &= (m_pad_hit_z == d.pad_hit_z() );
1300 result &= (m_pad_hit_r == d.pad_hit_r() );
1301 result &= (m_pad_hit_p == d.pad_hit_p() );
1302
1303 result &= (m_tgc_Inn_rho_hit_phi == d.tgc_Inn_rho_hit_phi() );
1304 result &= (m_tgc_Inn_rho_hit_r == d.tgc_Inn_rho_hit_r() );
1305 result &= (m_tgc_Inn_rho_hit_z == d.tgc_Inn_rho_hit_z() );
1306 result &= (m_tgc_Inn_rho_hit_width == d.tgc_Inn_rho_hit_width() );
1307 result &= (m_tgc_Inn_rho_hit_in_seg == d.tgc_Inn_rho_hit_in_seg() );
1308 result &= (m_tgc_Inn_phi_hit_phi == d.tgc_Inn_phi_hit_phi() );
1309 result &= (m_tgc_Inn_phi_hit_r == d.tgc_Inn_phi_hit_r() );
1310 result &= (m_tgc_Inn_phi_hit_z == d.tgc_Inn_phi_hit_z() );
1311 result &= (m_tgc_Inn_phi_hit_width == d.tgc_Inn_phi_hit_width() );
1312 result &= (m_tgc_Inn_phi_hit_in_seg == d.tgc_Inn_phi_hit_in_seg() );
1313 result &= (m_tgc_Mid_rho_hit_phi == d.tgc_Mid_rho_hit_phi() );
1314 result &= (m_tgc_Mid_rho_hit_r == d.tgc_Mid_rho_hit_r() );
1315 result &= (m_tgc_Mid_rho_hit_z == d.tgc_Mid_rho_hit_z() );
1316 result &= (m_tgc_Mid_rho_hit_width == d.tgc_Mid_rho_hit_width() );
1317 result &= (m_tgc_Mid_rho_hit_in_seg == d.tgc_Mid_rho_hit_in_seg() );
1318 result &= (m_tgc_Mid_phi_hit_phi == d.tgc_Mid_phi_hit_phi() );
1319 result &= (m_tgc_Mid_phi_hit_r == d.tgc_Mid_phi_hit_r() );
1320 result &= (m_tgc_Mid_phi_hit_z == d.tgc_Mid_phi_hit_z() );
1321 result &= (m_tgc_Mid_phi_hit_width == d.tgc_Mid_phi_hit_width() );
1322 result &= (m_tgc_Mid_phi_hit_in_seg == d.tgc_Mid_phi_hit_in_seg() );
1323
1324 result &= (m_mdt_onlineId == d.mdt_onlineId() );
1325 result &= (m_mdt_offlineId == d.mdt_offlineId() );
1326 result &= (m_mdt_tube_r == d.mdt_tube_r() );
1327 result &= (m_mdt_tube_z == d.mdt_tube_z() );
1328 result &= (m_mdt_tube_residual == d.mdt_tube_residual() );
1329 result &= (m_mdt_tube_time == d.mdt_tube_time() );
1330 result &= (m_mdt_tube_space == d.mdt_tube_space() );
1331 result &= (m_mdt_tube_sigma == d.mdt_tube_sigma() );
1332
1333 return result;
1334}
1335
1336std::string str_bit(const uint32_t w, const unsigned int n) {
1337
1338 int nbit = (n<=32)? n : 32;
1339 std::stringstream ss;
1340
1341 for(int i=nbit-1;i>=0;--i) ss << ( ((w>>i)&0x1)? 1 : 0 );
1342 //ss << std::endl;
1343
1344 return ss.str();
1345}
1346
1347std::string MuonFeatureDetails::str() const {
1348
1349 const MuonFeatureDetails& d = *this;
1350
1351 std::string id;
1352 switch (d.id()) {
1353
1354 case 0: id = "900 GEV Instance"; break;
1355 case 1: id = "MUON Instance"; break;
1356 case 2: id = "HALO Instance"; break;
1357 case 3: id = "COSMIC Instance"; break;
1358 default: id = "UNKNOWN Instance";
1359 }
1360
1361 std::stringstream ss;
1362
1363 ss << std::endl;
1364 ss << " *********************************************************" << std::endl;
1365 ss << " * Dump of the muFast ESD content *" << std::endl;
1366 ss << " *********************************************************" << std::endl;
1367 ss << " Instance : " << id << std::endl;
1368 ss << " TE id : " << d.te_id() << std::endl;
1369 ss << " Error code : 0x" << std::hex << d.error() << std::dec << std::endl;
1370 ss << " LVL1 ID : " << d.lvl1_id() << std::endl;
1371 ss << " Muon DetectorMask : " << /*str_bit(d.muondetmask(),10)*/d.muondetmask() << std::endl;
1372 ss << " RoI ID : " << d.roi_id() << std::endl;
1373 ss << " RoI System : " << d.roi_system() << std::endl;
1374 ss << " RoI Subsystem : " << d.roi_subsystem() << std::endl;
1375 ss << " RoI Sector : " << d.roi_sector() << std::endl;
1376 ss << " RoI Number : " << d.roi_number() << std::endl;
1377 ss << " RoI Threshold : " << d.roi_threshold() << std::endl;
1378 ss << " RoI Eta position : " << d.roi_eta() << std::endl;
1379 ss << " RoI Phi position : " << d.roi_phi() << std::endl;
1380
1381 ss << " ********* Level-2 Data Access ********" << std::endl;
1382 ss << " Requested ROBs :";
1383 for (unsigned int i=0; i<d.rob_id().size();++i)
1384 ss << " 0x" << std::hex << d.rob_id()[i] << std::dec;
1385 ss << std::endl;
1386
1387 ss << " Removed ROBs :";
1388 for (unsigned int i=0; i<d.removed_rob_id().size();++i)
1389 ss << " 0x" << std::hex << d.removed_rob_id()[i] << std::dec;
1390 ss << std::endl;
1391
1392 ss << " RPC PAD access err: 0x" << std::hex << d.rpc_pad_error() << std::dec << std::endl;
1393 ss << " TGC RDO access err: 0x" << std::hex << d.tgc_rdo_error() << std::dec << std::endl;
1394
1395 ss << " Requested CSMs :";
1396 for (unsigned int i=0; i<d.csm_id().size(); ++i)
1397 ss << " " << d.csm_id()[i] << "(" << d.csm_size()[i] << ")";
1398 ss << std::endl;
1399
1400 ss << " Removed CSMs :";
1401 for (unsigned int i=0; i<d.removed_csm_id().size(); ++i)
1402 ss << " " << d.removed_csm_id()[i];
1403 ss << std::endl;
1404
1405 ss << " CSMs access err :";
1406 for (unsigned int i=0; i<d.csm_error().size(); ++i)
1407 ss << " 0x" << std::hex << d.csm_error()[i] << std::dec;
1408 ss << std::endl;
1409
1410 ss << " ******* RPC hit reconstruction *******" << std::endl;
1411 ss << " RPC point 1 : "
1412 << "x = " << std::setw(9) << std::setprecision(3) << d.rpc1_x()
1413 << ", y = " << std::setw(9) << std::setprecision(3) << d.rpc1_y()
1414 << ", z = " << std::setw(9) << std::setprecision(3) << d.rpc1_z() << std::endl;
1415 ss << " RPC point 2 : "
1416 << "x = " << std::setw(9) << std::setprecision(3) << d.rpc2_x()
1417 << ", y = " << std::setw(9) << std::setprecision(3) << d.rpc2_y()
1418 << ", z = " << std::setw(9) << std::setprecision(3) << d.rpc2_z() << std::endl;
1419 ss << " RPC point 3 : "
1420 << "x = " << std::setw(9) << std::setprecision(3) << d.rpc3_x()
1421 << ", y = " << std::setw(9) << std::setprecision(3) << d.rpc3_y()
1422 << ", z = " << std::setw(9) << std::setprecision(3) << d.rpc3_z() << std::endl;
1423
1424 if(d.lvl1_emulation().size()) {
1425 ss << " eta_pivot_lay0 : " << str_bit(d.eta_pivot_lay0(),32) << std::endl;
1426 ss << " eta_pivot_lay1 : " << str_bit(d.eta_pivot_lay1(),32) << std::endl;
1427 ss << " eta_low_0_lay0 : " << str_bit(d.eta_low_0_lay0(),32) << std::endl;
1428 ss << " eta_low_1_lay0 : " << str_bit(d.eta_low_1_lay0(),32) << std::endl;
1429 ss << " eta_low_0_lay1 : " << str_bit(d.eta_low_0_lay1(),32) << std::endl;
1430 ss << " eta_low_1_lay1 : " << str_bit(d.eta_low_1_lay1(),32) << std::endl;
1431 ss << " eta_high_0_lay0 : " << str_bit(d.eta_high_0_lay0(),32) << std::endl;
1432 ss << " eta_high_1_lay0 : " << str_bit(d.eta_high_1_lay0(),32) << std::endl;
1433 ss << " eta_high_0_lay1 : " << str_bit(d.eta_high_0_lay1(),32) << std::endl;
1434 ss << " eta_high_1_lay1 : " << str_bit(d.eta_high_1_lay1(),32) << std::endl;
1435 ss << " phi_pivot_lay0 : " << str_bit(d.phi_pivot_lay0(),32) << std::endl;
1436 ss << " phi_pivot_lay1 : " << str_bit(d.phi_pivot_lay1(),32) << std::endl;
1437 ss << " phi_low_0_lay0 : " << str_bit(d.phi_low_0_lay0(),32) << std::endl;
1438 ss << " phi_low_1_lay0 : " << str_bit(d.phi_low_1_lay0(),32) << std::endl;
1439 ss << " phi_low_0_lay1 : " << str_bit(d.phi_low_0_lay1(),32) << std::endl;
1440 ss << " phi_low_1_lay1 : " << str_bit(d.phi_low_1_lay1(),32) << std::endl;
1441 ss << " phi_high_0_lay0 : " << str_bit(d.phi_high_0_lay0(),32) << std::endl;
1442 ss << " phi_high_1_lay0 : " << str_bit(d.phi_high_1_lay0(),32) << std::endl;
1443 ss << " phi_high_0_lay1 : " << str_bit(d.phi_high_0_lay1(),32) << std::endl;
1444 ss << " phi_high_1_lay1 : " << str_bit(d.phi_high_1_lay1(),32) << std::endl;
1445 }
1446
1447 for (unsigned int i=0;i<d.pad_hit_onlineId().size();++i)
1448 ss << " RPC hit : "
1449 << "onlineId=0x" << std::hex << d.pad_hit_onlineId()[i] << std::dec
1450 << ", code=" << d.pad_hit_code()[i]
1451 << ", x=" << std::setw(9) << std::setprecision(3) << d.pad_hit_x()[i]
1452 << ", y=" << std::setw(9) << std::setprecision(3) << d.pad_hit_y()[i]
1453 << ", z=" << std::setw(9) << std::setprecision(3) << d.pad_hit_z()[i]
1454 << ", r=" << std::setw(10) << std::setprecision(3) << d.pad_hit_r()[i]
1455 << ", p=" << std::setw(6) << std::setprecision(3) << d.pad_hit_p()[i]
1456 << std::endl;
1457
1458 ss << " ******* TGC hit reconstruction *******" << std::endl;
1459 ss << " TGC Mid1 point :"
1460 << " eta=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid1_eta()
1461 << ", phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid1_phi()
1462 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid1_r()
1463 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid1_z() << std::endl;
1464 ss << " TGC Mid2 point :"
1465 << " eta=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid2_eta()
1466 << ", phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid2_phi()
1467 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid2_r()
1468 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid2_z() << std::endl;
1469 ss << " TGC Mid fit :"
1470 << " r_chi2=" << std::setw(9) << std::setprecision(1) << d.tgc_Mid_rho_chi2()
1471 << ", r_num=" << std::setw(4) << d.tgc_Mid_rho_N()
1472 << ", p_chi2=" << std::setw(9) << std::setprecision(1) << d.tgc_Mid_phi_chi2()
1473 << ", p_num=" << std::setw(4) << d.tgc_Mid_phi_N() << std::endl;
1474 ss << " TGC Inner point :"
1475 << " eta=" << std::setw(9) << std::setprecision(4) << d.tgc_Inn_eta()
1476 << ", phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Inn_phi()
1477 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_r()
1478 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_z() << std::endl;
1479 ss << " TGC Inner fit :"
1480 << " r_std=" << std::setw(9) << std::setprecision(1) << d.tgc_Inn_rho_std()
1481 << ", r_num=" << std::setw(4) << d.tgc_Inn_rho_N()
1482 << ", p_std=" << std::setw(9) << std::setprecision(1) << d.tgc_Inn_phi_std()
1483 << ", p_num=" << std::setw(4) << d.tgc_Inn_phi_N() << std::endl;
1484
1485 ss << " TGC PT estimate : " << d.tgc_PT() << std::endl;
1486
1487 for (unsigned int i=0;i<d.tgc_Mid_rho_hit_phi().size();++i)
1488 ss << " TGC Mid rho hit :"
1489 << " phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid_rho_hit_phi()[i]
1490 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid_rho_hit_r()[i]
1491 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid_rho_hit_z()[i]
1492 << ", width=" << std::setw(4) << std::setprecision(2) << d.tgc_Mid_rho_hit_width()[i]
1493 << ", in road=" << d.tgc_Mid_rho_hit_in_seg()[i] << std::endl;
1494
1495 for (unsigned int i=0;i<d.tgc_Mid_phi_hit_phi().size();++i)
1496 ss << " TGC Mid phi hit :"
1497 << " phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Mid_phi_hit_phi()[i]
1498 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid_phi_hit_r()[i]
1499 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Mid_phi_hit_z()[i]
1500 << ", width=" << std::setw(4) << std::setprecision(2) << d.tgc_Mid_phi_hit_width()[i]
1501 << ", in road=" << d.tgc_Mid_phi_hit_in_seg()[i] << std::endl;
1502
1503 for (unsigned int i=0;i<d.tgc_Inn_rho_hit_phi().size();++i)
1504 ss << " TGC Inn rho hit :"
1505 << " phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Inn_rho_hit_phi()[i]
1506 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_rho_hit_r()[i]
1507 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_rho_hit_z()[i]
1508 << ", width=" << std::setw(4) << std::setprecision(2) << d.tgc_Inn_rho_hit_width()[i]
1509 << ", in road=" << d.tgc_Inn_rho_hit_in_seg()[i] << std::endl;
1510
1511 for (unsigned int i=0;i<d.tgc_Inn_phi_hit_phi().size();++i)
1512 ss << " TGC Inn rho hit :"
1513 << " phi=" << std::setw(9) << std::setprecision(4) << d.tgc_Inn_phi_hit_phi()[i]
1514 << ", r=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_phi_hit_r()[i]
1515 << ", z=" << std::setw(10) << std::setprecision(2) << d.tgc_Inn_phi_hit_z()[i]
1516 << ", width=" << std::setw(4) << std::setprecision(2) << d.tgc_Inn_phi_hit_width()[i]
1517 << ", in road=" << d.tgc_Inn_phi_hit_in_seg()[i] << std::endl;
1518
1519 ss << " ******** Track reconstruction ********" << std::endl;
1520 ss << " Track model : type=" << d.type()
1521 << ", x=" << std::setw(9) << std::setprecision(3) << d.t_x_center()
1522 << ", y=" << std::setw(9) << std::setprecision(3) << d.t_y_center()
1523 << ", rad=" << std::setw(10) << std::setprecision(3) << d.t_radius()
1524 << std::endl;
1525 ss << " Phi position :"
1526 << " ap=" << std::setw(9) << std::setprecision(3) << d.t_ap()
1527 << ", aphi=" << std::setw(9) << std::setprecision(3) << d.t_aphi()
1528 << ", phi=" << std::setw(9) << std::setprecision(3) << d.t_phi()
1529 << std::endl;
1530 ss << " Extrapolation :"
1531 << " InnerEta=" << std::setw(9) << std::setprecision(3) << d.extrInnerEta()
1532 << " InnerPhi=" << std::setw(9) << std::setprecision(3) << d.extrInnerPhi()
1533 << std::endl;
1534
1535 ss << " ************* Muon Roads *************" << std::endl;
1536 ss << " Inner trigger :"
1537 << " ty1=" << (d.chamber_type_1())[0][0]
1538 << ", ty2=" <<(d.chamber_type_2())[0][0]
1539 << ", pos=" <<(d.pos())[0][0]
1540 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[0][0]
1541 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[0][0]
1542 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[0][0]
1543 << std::endl;
1544 ss << " Inner trigger :"
1545 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[0][0]
1546 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[0][0]
1547 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[0][0]
1548 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[0][0]
1549 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[0][0]
1550 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[0][0]
1551 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[0][0]
1552 << std::endl;
1553 ss << " Middle trigger :"
1554 << " ty1=" << (d.chamber_type_1())[0][1]
1555 << ", ty2=" <<(d.chamber_type_2())[0][1]
1556 << ", pos=" <<(d.pos())[0][1]
1557 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[0][1]
1558 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[0][1]
1559 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[0][1]
1560 << std::endl;
1561 ss << " Middle trigger :"
1562 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[0][1]
1563 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[0][1]
1564 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[0][1]
1565 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[0][1]
1566 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[0][1]
1567 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[0][1]
1568 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[0][1]
1569 << std::endl;
1570 ss << " Outer trigger :"
1571 << " ty1=" << (d.chamber_type_1())[0][2]
1572 << ", ty2=" <<(d.chamber_type_2())[0][2]
1573 << ", pos=" <<(d.pos())[0][2]
1574 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[0][2]
1575 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[0][2]
1576 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[0][2]
1577 << std::endl;
1578 ss << " Outer trigger :"
1579 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[0][2]
1580 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[0][2]
1581 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[0][2]
1582 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[0][2]
1583 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[0][2]
1584 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[0][2]
1585 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[0][2]
1586 << std::endl;
1587 ss << " Ext. trigger :"
1588 << " ty1=" << (d.chamber_type_1())[0][3]
1589 << ", ty2=" <<(d.chamber_type_2())[0][3]
1590 << ", pos=" <<(d.pos())[0][3]
1591 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[0][3]
1592 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[0][3]
1593 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[0][3]
1594 << std::endl;
1595 ss << " Ext. trigger :"
1596 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[0][3]
1597 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[0][3]
1598 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[0][3]
1599 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[0][3]
1600 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[0][3]
1601 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[0][3]
1602 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[0][3]
1603 << std::endl;
1604
1605 ss << " Inner overlap :"
1606 << " ty1=" << (d.chamber_type_1())[1][0]
1607 << ", ty2=" <<(d.chamber_type_2())[1][0]
1608 << ", pos=" <<(d.pos())[1][0]
1609 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[1][0]
1610 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[1][0]
1611 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[1][0]
1612 << std::endl;
1613 ss << " Inner overlap :"
1614 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[1][0]
1615 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[1][0]
1616 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[1][0]
1617 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[1][0]
1618 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[1][0]
1619 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[1][0]
1620 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[1][0]
1621 << std::endl;
1622 ss << " Middle overlap :"
1623 << " ty1=" << (d.chamber_type_1())[1][1]
1624 << ", ty2=" <<(d.chamber_type_2())[1][1]
1625 << ", pos=" <<(d.pos())[1][1]
1626 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[1][1]
1627 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[1][1]
1628 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[1][1]
1629 << std::endl;
1630 ss << " Middle overlap :"
1631 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[1][1]
1632 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[1][1]
1633 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[1][1]
1634 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[1][1]
1635 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[1][1]
1636 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[1][1]
1637 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[1][1]
1638 << std::endl;
1639 ss << " Outer overlap :"
1640 << " ty1=" << (d.chamber_type_1())[1][2]
1641 << ", ty2=" <<(d.chamber_type_2())[1][2]
1642 << ", pos=" <<(d.pos())[1][2]
1643 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[1][2]
1644 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[1][2]
1645 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[1][2]
1646 << std::endl;
1647 ss << " Outer overlap :"
1648 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[1][2]
1649 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[1][2]
1650 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[1][2]
1651 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[1][2]
1652 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[1][2]
1653 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[1][2]
1654 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[1][2]
1655 << std::endl;
1656 ss << " Ext. overlap :"
1657 << " ty1=" << (d.chamber_type_1())[1][3]
1658 << ", ty2=" <<(d.chamber_type_2())[1][3]
1659 << ", pos=" <<(d.pos())[1][3]
1660 << ", aw=" << std::setw(9) << std::setprecision(3) << (d.aw())[1][3]
1661 << ", bw=" << std::setw(9) << std::setprecision(3) << (d.bw())[1][3]
1662 << ", phi=" << std::setw(8) << std::setprecision(3) << (d.st_phi())[1][3]
1663 << std::endl;
1664 ss << " Ext. overlap :"
1665 << " Zmin=" << std::setw(9) << std::setprecision(3) << (d.zetaMin())[1][3]
1666 << ", Zmax=" << std::setw(9) << std::setprecision(3) << (d.zetaMax())[1][3]
1667 << ", Rmin=" << std::setw(9) << std::setprecision(3) << (d.radMin())[1][3]
1668 << ", Rmax=" << std::setw(9) << std::setprecision(3) << (d.radMax())[1][3]
1669 << ", Emin=" << std::setw(7) << std::setprecision(3) << (d.etaMin())[1][3]
1670 << ", Emax=" << std::setw(7) << std::setprecision(3) << (d.etaMax())[1][3]
1671 << ", road=" << std::setw(7) << std::setprecision(3) << (d.st_roads())[1][3]
1672 << std::endl;
1673
1674
1675
1676 ss << " ******* MDT hit reconstruction *******" << std::endl;
1677 ss << " MDT Innermost fit :"
1678 << " slope=" << std::setw(9) << std::setprecision(3) << d.mdt_Inner_slope()
1679 << ", interc.=" << std::setw(9) << std::setprecision(3) << d.mdt_Inner_intercept()
1680 << ", z=" << std::setw(9) << std::setprecision(3) << d.mdt_Inner_Z()
1681 << ", r=" << std::setw(9) << std::setprecision(3) << d.mdt_Inner_R()
1682 << ", chi2=" << std::setw(9) << std::setprecision(2) << d.mdt_Inner_fit_chi() << std::endl;
1683
1684 ss << " MDT Middle fit :"
1685 << " slope=" << std::setw(9) << std::setprecision(3) << d.mdt_Middle_slope()
1686 << ", interc.=" << std::setw(9) << std::setprecision(3) << d.mdt_Middle_intercept()
1687 << ", z=" << std::setw(9) << std::setprecision(3) << d.mdt_Middle_Z()
1688 << ", r=" << std::setw(9) << std::setprecision(3) << d.mdt_Middle_R()
1689 << ", chi2=" << std::setw(9) << std::setprecision(2) << d.mdt_Middle_fit_chi() << std::endl;
1690
1691 ss << " MDT Outermost fit :"
1692 << " slope=" << std::setw(9) << std::setprecision(3) << d.mdt_Outer_slope()
1693 << ", interc.=" << std::setw(9) << std::setprecision(3) << d.mdt_Outer_intercept()
1694 << ", z=" << std::setw(9) << std::setprecision(3) << d.mdt_Outer_Z()
1695 << ", r=" << std::setw(9) << std::setprecision(3) << d.mdt_Outer_R()
1696 << ", chi2=" << std::setw(9) << std::setprecision(2) << d.mdt_Outer_fit_chi() << std::endl;
1697
1698 for (unsigned int i=0;i<d.mdt_onlineId().size();++i)
1699 ss << " MDT hit :"
1700 << " onlineId=0x" << std::hex << d.mdt_onlineId()[i] << std::dec
1701 << ", offlineId=0x" << std::hex << d.mdt_offlineId()[i] << std::dec
1702 << ", r=" << std::setw(9) << std::setprecision(2) << d.mdt_tube_r()[i]
1703 << ", z=" << std::setw(9) << std::setprecision(2) << d.mdt_tube_z()[i]
1704 << ", res=" << std::setw(9) << std::setprecision(2) << d.mdt_tube_residual()[i]
1705 << ", time=" << std::setw(5) << d.mdt_tube_time()[i]
1706 << ", space=" << d.mdt_tube_space()[i]
1707 << ", sigma=" << d.mdt_tube_sigma()[i] << std::endl;
1708
1709
1710 ss << " ********** Extended Variable *********" << std::endl;
1711 ss << " Extension 0 :";
1712 for (unsigned int i=0;i<d.extension0().size();++i)
1713 ss << " " << d.extension0()[i];
1714 ss << std::endl;
1715 ss << " Extension 1 :";
1716 for (unsigned int i=0;i<d.extension1().size();++i)
1717 ss << " " << d.extension1()[i];
1718 ss << std::endl;
1719 ss << " Extension 2 :";
1720 for (unsigned int i=0;i<d.extension2().size();++i)
1721 ss << " " << d.extension2()[i];
1722 ss << std::endl;
1723 ss << " Extension 3 :";
1724 for (unsigned int i=0;i<d.extension3().size();++i)
1725 ss << " " << d.extension3()[i];
1726 ss << std::endl;
1727 ss << " Extension 4 :";
1728 for (unsigned int i=0;i<d.extension4().size();++i)
1729 ss << " " << d.extension4()[i];
1730 ss << std::endl;
1731 ss << " Extension 5 :";
1732 for (unsigned int i=0;i<d.extension5().size();++i)
1733 ss << " " << d.extension5()[i];
1734 ss << std::endl;
1735 ss << " Extension 6 :";
1736 for (unsigned int i=0;i<d.extension6().size();++i)
1737 ss << " " << d.extension6()[i];
1738 ss << std::endl;
1739 ss << " Extension 7 :";
1740 for (unsigned int i=0;i<d.extension7().size();++i)
1741 ss << " " << d.extension7()[i];
1742 ss << std::endl;
1743 ss << " Extension 8 :";
1744 for (unsigned int i=0;i<d.extension8().size();++i)
1745 ss << " " << d.extension8()[i];
1746 ss << std::endl;
1747 ss << " Extension 9 :";
1748 for (unsigned int i=0;i<d.extension9().size();++i)
1749 ss << " " << d.extension9()[i];
1750 ss << std::endl;
1751
1752
1753 ss << " ********** Feature Extracted *********" << std::endl;
1754 ss << " Address : " << d.Address() << std::endl;
1755 ss << " Sagitta : " << d.Sagitta() << std::endl;
1756 ss << " Radius : " << d.Radius() << std::endl;
1757 ss << " Slope : " << d.Slope() << std::endl;
1758 ss << " Intercept : " << d.Intercept() << std::endl;
1759 ss << " Alpha : " << d.Alpha() << std::endl;
1760 ss << " Beta : " << d.Beta() << std::endl;
1761 ss << " DeltaR : " << d.DeltaR() << std::endl;
1762 ss << " Speed over c : " << d.Speed_over_c() << std::endl;
1763 ss << " Eta map : " << d.Eta() << std::endl;
1764 ss << " Phi map : " << d.PhiMap() << std::endl;
1765 ss << " Phi : " << d.Phi() << std::endl;
1766 ss << " Phi direction : " << d.PhiDir() << std::endl;
1767 ss << " PT : " << d.Pt() << std::endl;
1768 ss << " Charge : " << d.Charge() << std::endl;
1769
1770 return ss.str();
1771}
1772
1773
1774MsgStream& operator<< ( MsgStream& m, const MuonFeatureDetails& d ) {
1775 m << d.str();
1776 return m;
1777}
1778
1779std::ostream& operator<< (std::ostream& s, const MuonFeatureDetails& d ) {
1780 s << d.str();
1781 return s;
1782}
Scalar eta() const
pseudorapidity method
Scalar deltaR(const MatrixBase< Derived > &vec) const
Scalar phi() const
phi method
double charge(const T &p)
Definition AtlasPID.h:997
static Double_t sz
static Double_t ss
MsgStream & operator<<(MsgStream &m, const MuonFeatureDetails &d)
std::string str_bit(const uint32_t w, const unsigned int n)
const double width
#define y
#define x
#define z
#define min(a, b)
Definition cfImp.cxx:40
#define max(a, b)
Definition cfImp.cxx:41
std::vector< uint32_t > m_csm_id
void setRpc2(float x, float y, float z)
void setPhiDir(float dir_phi)
std::vector< uint32_t > m_removed_csm_id
const std::vector< std::vector< float > > & bw(void) const
std::vector< float > m_tgc_Mid_rho_hit_width
std::vector< float > m_mdt_tube_sigma
void copy_vector(std::vector< T > &d, const std::vector< T > &s, int resize=0)
void setEtaPivot(uint32_t ly0, uint32_t ly1)
std::vector< uint32_t > m_extension6
void setBw(int tr, int st, float bw)
std::vector< std::vector< float > > m_etaMax
std::vector< uint32_t > m_tgc_Inn_phi_hit_in_seg
std::vector< uint32_t > m_extension9
AlgoId id(void) const
std::vector< uint32_t > m_extension8
void setSpeed_over_c(float speed)
std::vector< std::vector< float > > m_st_phi
std::vector< std::vector< float > > m_st_roads
std::vector< float > m_tgc_Inn_phi_hit_width
std::vector< uint32_t > m_tgc_Mid_phi_hit_in_seg
bool hasSameContentOf(const MuonFeatureDetails &d) const
void setPhiLow(uint32_t ly00, uint32_t ly01, uint32_t ly10, uint32_t ly11)
void setTgcMid1(float Mid1_eta, float Mid1_phi, float Mid1_r, float Mid1_z)
void setChamber_type_1(int tr, int st, int ty)
void setDeltaR(float deltaR)
std::vector< std::vector< float > > m_zetaMin
std::vector< std::vector< float > > m_radMin
void setPhiHigh(uint32_t ly00, uint32_t ly01, uint32_t ly10, uint32_t ly11)
std::vector< uint32_t > m_pad_hit_code
std::vector< uint32_t > m_mdt_offlineId
std::vector< std::vector< float > > m_zetaMax
std::vector< float > m_tgc_Inn_phi_hit_r
void setRpc1(float x, float y, float z)
std::vector< std::vector< float > > m_etaMin
int max_mdt_hits_capacity(void) const
void setMdtHit(uint32_t onlineId, uint32_t offlineId, float r, float z, float residual, float time, float space, float sigma)
std::vector< uint32_t > m_removed_rob_id
std::vector< float > m_pad_hit_p
std::vector< float > m_mdt_tube_space
MuonFeatureDetails & operator=(const MuonFeatureDetails &source)
std::vector< float > m_mdt_tube_z
void setSP1(float slope, float intercept, float z, float r, float chisquare)
int max_rpc_hits_capacity(void) const
std::vector< float > m_tgc_Inn_rho_hit_r
void setConvertedCsmSize(const std::vector< uint32_t > &v)
std::vector< uint32_t > m_pad_hit_onlineId
uint32_t lumi_block(void) const
int max_csm_capacity(void) const
std::vector< float > m_pad_hit_x
void setSlope(float slope)
void setEtaLow(uint32_t ly00, uint32_t ly01, uint32_t ly10, uint32_t ly11)
std::vector< float > m_tgc_Inn_phi_hit_z
bool hasSameTrackReco(const MuonFeatureDetails &d) const
std::vector< float > m_tgc_Inn_phi_hit_phi
std::vector< std::vector< int > > m_chamber_type_1
std::string str(void) const
std::vector< uint32_t > m_csm_error
void setRequestedRob(uint32_t)
std::vector< float > m_mdt_tube_residual
std::vector< uint32_t > m_extension2
std::vector< uint32_t > m_rob_id
std::vector< uint32_t > m_extension0
void setRpcPadError(uint32_t)
void setRpc3(float x, float y, float z)
std::vector< uint32_t > m_extension4
uint32_t muondetmask(void) const
void copy_variables(MuonFeatureDetails &des, const MuonFeatureDetails &sor)
std::vector< float > m_pad_hit_y
void setSP2(float slope, float intercept, float z, float r, float chisquare)
void setExtrInnerPhi(float extPhi)
uint32_t lvl1_id(void) const
void setTgcInnRhoHit(float phi, float r, float z, float width, uint32_t in_seg)
void setExtrInnerEta(float extEta)
std::vector< float > m_tgc_Mid_rho_hit_r
std::vector< std::vector< int > > m_chamber_type_2
uint32_t te_id(void) const
std::vector< float > m_pad_hit_r
void setTgcPadError(uint32_t)
void setSagitta(float sagitta)
std::vector< uint32_t > m_extension3
std::vector< float > m_tgc_Mid_rho_hit_phi
const std::vector< std::vector< float > > & aw(void) const
void setAddress(int address)
std::vector< float > m_tgc_Inn_rho_hit_z
const std::vector< std::vector< int > > & pos(void) const
std::vector< std::vector< int > > m_pos
std::vector< float > m_mdt_tube_time
void setChamber_type_2(int tr, int st, int ty)
void setAlpha(float alpha)
void setEtaMax(int tr, int st, float max)
void setRadMin(int tr, int st, float min)
std::vector< float > m_tgc_Mid_rho_hit_z
void setZetaMax(int tr, int st, float max)
std::vector< uint32_t > m_extension7
std::vector< float > m_tgc_Mid_phi_hit_r
std::vector< float > m_tgc_Inn_rho_hit_phi
std::vector< float > m_mdt_tube_r
std::vector< uint32_t > m_extension5
void setTgcPt(float tgc_pt)
void setPadHit(uint32_t onlineId, uint32_t code, float x, float y, float z, float r, float p)
void setTgcMidPhiHit(float phi, float r, float z, float width, uint32_t in_seg)
std::vector< float > m_tgc_Mid_phi_hit_phi
void setSt_phi(int tr, int st, float phi)
std::vector< std::vector< float > > m_bw
void setEtaMin(int tr, int st, float min)
void setPhiPivot(uint32_t ly0, uint32_t ly1)
void setPhiMap(float phimap)
std::vector< float > m_pad_hit_z
void setAw(int tr, int st, float aw)
std::vector< uint32_t > m_csm_size
void setTgcInnF(float rho_std, long rho_n, float phi_std, long phi_n)
void setT_aphi(float aphi)
void setRadius(float radius)
std::vector< float > m_tgc_Mid_phi_hit_width
bool hasSameRoIOf(const MuonFeatureDetails &d) const
void setCharge(float charge)
bool isEqual(const MuonFeatureDetails &d) const
std::vector< float > m_tgc_Mid_phi_hit_z
bool operator==(const MuonFeatureDetails &d) const
void setTgcMidRhoHit(float phi, float r, float z, float width, uint32_t in_seg)
void setTgcInnPhiHit(float phi, float r, float z, float width, uint32_t in_seg)
void setZetaMin(int tr, int st, float min)
std::vector< float > m_tgc_Inn_rho_hit_width
void setEtaHigh(uint32_t ly00, uint32_t ly01, uint32_t ly10, uint32_t ly11)
std::vector< uint32_t > m_lvl1_emulation
std::vector< uint32_t > m_tgc_Mid_rho_hit_in_seg
std::vector< uint32_t > m_mdt_onlineId
void setConvertedCsm(uint32_t, uint32_t)
int max_tgc_hits_capacity(void) const
std::vector< uint32_t > m_extension1
void setSt_roads(int tr, int st, float road)
int max_lvl1_emu_capacity(void) const
std::vector< uint32_t > m_tgc_Inn_rho_hit_in_seg
std::vector< std::vector< float > > m_radMax
void setSP3(float slope, float intercept, float z, float r, float chisquare)
int max_rob_capacity(void) const
void setIntercept(float intercept)
void setTgcMidF(float rho_chi2, long rho_n, float phi_chi2, long phi_n)
void setRadMax(int tr, int st, float max)
int extension_capacity(void) const
void setTgcInn(float Inn_eta, float Inn_phi, float Inn_r, float Inn_z)
std::vector< std::vector< float > > m_aw
void setPos(int tr, int st, int pos)
void setLvl1Emulation(const std::vector< uint32_t > &v)
void setTgcMid2(float Mid2_eta, float Mid2_phi, float Mid2_r, float Mid2_z)
int r
Definition globals.cxx:22