ATLAS Offline Software
MuonFeatureDetails_p2.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGMUONEVENTTPCNV_MUONFEATUREDETAILS_P2_H
6 #define TRIGMUONEVENTTPCNV_MUONFEATUREDETAILS_P2_H
7 
9 #include <stdint.h>
10 
11 // transient side of this class is completely wrongly organized. it's all in separate vectors.
12 // persistant side is now a bit more optimal (less small vectors) but not much was gained in speed as it again fills all the
13 // vectors on the transient side. Hopefully in time this class will dissapear.
14 
15 
16 struct padhit{
17  unsigned int m_pad_hit_onlineId;
18  unsigned int m_pad_hit_code;
19  float m_pad_hit_x;
20  float m_pad_hit_y;
21  float m_pad_hit_z;
22  float m_pad_hit_r;
23  float m_pad_hit_p;
24 };
25 
26 struct mdthit{
27  unsigned int m_mdt_onlineId;
28  unsigned int m_mdt_offlineId;
29  float m_mdt_tube_r;
30  float m_mdt_tube_z;
35 };
36 
37 struct tgchit{
38  unsigned int m_tgc_rho_hit_in_seg;
39  unsigned int m_tgc_phi_hit_in_seg;
48 };
49 
51 {
52  friend class MuonFeatureDetailsCnv;
53 
54  public:
55 
58 
59  // private:
60 
61 /**********************************************
62 * very important! don't change anything in this file.
63 * not even comments. Variables will be stored in the order in which they are listed in comments.
64 * If you want to change something make a new version of MuonFeatureDetailsContainer and corresponding MuonFeatureDetails and their converters.
65 **********************************************/
66 
67 
68 
70  int m_Address{};
71 
72  // uint32_t m_te_id;
73  // uint32_t m_error;
74  //
75  // uint32_t m_lvl1_id;
76  // uint32_t m_lumi_block;
77  // uint32_t m_muondetmask;
78  // uint32_t m_RoIID;
79  // uint32_t m_RoISystem;
80  // uint32_t m_RoISubsystem;
81  // uint32_t m_RoISector;
82  // uint32_t m_RoINumber;
83  // uint32_t m_RoIThreshold;
84  //
85  // uint32_t m_rpc_pad_error;
86  // uint32_t m_tgc_rdo_error;
87 
89 
90  // long m_tgc_Mid_rho_N;
91  // long m_tgc_Mid_phi_N;
92  // long m_tgc_Inn_rho_N;
93  // long m_tgc_Inn_phi_N;
94  // long m_type;
95 
96  long m_allTheLongs[5]{};
97 
98  // float m_RoIEta;
99  // float m_RoIPhi;
100  //
101  // float m_rpc1_x;
102  // float m_rpc1_y;
103  // float m_rpc1_z;
104  //
105  // float m_rpc2_x;
106  // float m_rpc2_y;
107  // float m_rpc2_z;
108  //
109  // float m_rpc3_x;
110  // float m_rpc3_y;
111  // float m_rpc3_z;
112  //
113  // float m_tgc_Mid1_eta;
114  // float m_tgc_Mid1_phi;
115  // float m_tgc_Mid1_r;
116  // float m_tgc_Mid1_z;
117  //
118  // float m_tgc_Mid2_eta;
119  // float m_tgc_Mid2_phi;
120  // float m_tgc_Mid2_r;
121  // float m_tgc_Mid2_z;
122  //
123  // float m_tgc_Mid_rho_chi2;
124  // float m_tgc_Mid_phi_chi2;
125  //
126  // float m_tgc_Inn_eta;
127  // float m_tgc_Inn_phi;
128  // float m_tgc_Inn_r;
129  // float m_tgc_Inn_z;
130  // float m_tgc_Inn_rho_std;
131  // float m_tgc_Inn_phi_std;
132  //
133  // float m_tgc_PT;
134  //
135  // float m_t_x_center;
136  // float m_t_y_center;
137  // float m_t_radius;
138  // float m_t_ap;
139  // float m_t_aphi;
140  // float m_t_phi;
141  // float m_extrInnerEta;
142  // float m_extrInnerPhi;
143  //
144  // float m_mdt_Inner_slope;
145  // float m_mdt_Inner_intercept;
146  // float m_mdt_Inner_Z;
147  // float m_mdt_Inner_R;
148  // float m_mdt_Inner_fit_chi;
149  // float m_mdt_Middle_slope;
150  // float m_mdt_Middle_intercept;
151  // float m_mdt_Middle_Z;
152  // float m_mdt_Middle_R;
153  // float m_mdt_Middle_fit_chi;
154  // float m_mdt_Outer_slope;
155  // float m_mdt_Outer_intercept;
156  // float m_mdt_Outer_Z;
157  // float m_mdt_Outer_R;
158  // float m_mdt_Outer_fit_chi;
159  //
160  // float m_Sagitta;
161  // float m_Radius;
162  // float m_Slope;
163  // float m_Intercept;
164  // float m_Alpha;
165  // float m_Beta;
166  // float m_DeltaR;
167  // float m_Speed_over_c;
168  // float m_Eta;
169  // float m_PhiMap;
170  // float m_Phi;
171  // float m_PhiDir;
172  // float m_Pt;
173  // float m_Charge;
174 
175  float m_allTheFloats[65]{};
176 
177  std::vector<uint32_t> m_extension0;
178  std::vector<uint32_t> m_extension1;
179  std::vector<uint32_t> m_extension2;
180  std::vector<uint32_t> m_extension3;
181  std::vector<uint32_t> m_extension4;
182  std::vector<uint32_t> m_extension5;
183  std::vector<uint32_t> m_extension6;
184  std::vector<uint32_t> m_extension7;
185  std::vector<uint32_t> m_extension8;
186  std::vector<uint32_t> m_extension9;
187  std::vector<uint32_t> m_lvl1_emulation;
188  std::vector<uint32_t> m_rob_id;
189  std::vector<uint32_t> m_csm_id;
190  std::vector<uint32_t> m_csm_size;
191  std::vector<uint32_t> m_csm_error;
192  std::vector<uint32_t> m_removed_rob_id;
193  std::vector<uint32_t> m_removed_csm_id;
194 
195  // std::vector<uint32_t> m_pad_hit_onlineId; replaced by vector<padhit>
196  // std::vector<uint32_t> m_pad_hit_code;
197  // std::vector<float> m_pad_hit_x;
198  // std::vector<float> m_pad_hit_y;
199  // std::vector<float> m_pad_hit_z;
200  // std::vector<float> m_pad_hit_r;
201  // std::vector<float> m_pad_hit_p;
202 
203  std::vector<padhit> padv;
204 
205  // std::vector<uint32_t> m_tgc_Inn_rho_hit_in_seg; replaced by vector<tgchit>
206  // std::vector<float> m_tgc_Inn_rho_hit_phi;
207  // std::vector<float> m_tgc_Inn_rho_hit_r;
208  // std::vector<float> m_tgc_Inn_rho_hit_z;
209  // std::vector<float> m_tgc_Inn_rho_hit_width;
210 
211  std::vector<tgchit> tgcInnVrho;
212 
213  // std::vector<uint32_t> m_tgc_Inn_phi_hit_in_seg;
214  // std::vector<float> m_tgc_Inn_phi_hit_phi;
215  // std::vector<float> m_tgc_Inn_phi_hit_r;
216  // std::vector<float> m_tgc_Inn_phi_hit_z;
217  // std::vector<float> m_tgc_Inn_phi_hit_width;
218 
219  std::vector<tgchit> tgcInnVphi;
220 
221  // std::vector<uint32_t> m_tgc_Mid_rho_hit_in_seg;
222  // std::vector<float> m_tgc_Mid_rho_hit_phi;
223  // std::vector<float> m_tgc_Mid_rho_hit_r;
224  // std::vector<float> m_tgc_Mid_rho_hit_z;
225  // std::vector<float> m_tgc_Mid_rho_hit_width;
226 
227  std::vector<tgchit> tgcMidVrho;
228 
229  // std::vector<uint32_t> m_tgc_Mid_phi_hit_in_seg;
230  // std::vector<float> m_tgc_Mid_phi_hit_phi;
231  // std::vector<float> m_tgc_Mid_phi_hit_r;
232  // std::vector<float> m_tgc_Mid_phi_hit_z;
233  // std::vector<float> m_tgc_Mid_phi_hit_width;
234 
235  std::vector<tgchit> tgcMidVphi;
236 
237  // std::vector<uint32_t> m_mdt_onlineId; replaced by vector<mdthit>
238  // std::vector<uint32_t> m_mdt_offlineId;
239  // std::vector<float> m_mdt_tube_r;
240  // std::vector<float> m_mdt_tube_z;
241  // std::vector<float> m_mdt_tube_residual;
242  // std::vector<float> m_mdt_tube_time;
243  // std::vector<float> m_mdt_tube_space;
244  // std::vector<float> m_mdt_tube_sigma;
245 
246  std::vector<mdthit> mdhv;
247 
248  std::vector< std::vector<int> > m_chamber_type_1;
249  std::vector< std::vector<int> > m_chamber_type_2;
250  std::vector< std::vector<int> > m_pos;
251  std::vector< std::vector<float> > m_aw;
252  std::vector< std::vector<float> > m_bw;
253  std::vector< std::vector<float> > m_zetaMin;
254  std::vector< std::vector<float> > m_zetaMax;
255  std::vector< std::vector<float> > m_radMin;
256  std::vector< std::vector<float> > m_radMax;
257  std::vector< std::vector<float> > m_etaMin;
258  std::vector< std::vector<float> > m_etaMax;
259  std::vector< std::vector<float> > m_st_phi;
260  std::vector< std::vector<float> > m_st_roads;
261 
262 };
263 
264 #endif
265 
MuonFeatureDetails_p2::m_chamber_type_1
std::vector< std::vector< int > > m_chamber_type_1
Definition: MuonFeatureDetails_p2.h:248
MuonFeatureDetails_p2::~MuonFeatureDetails_p2
~MuonFeatureDetails_p2()
Definition: MuonFeatureDetails_p2.h:57
padhit::m_pad_hit_z
float m_pad_hit_z
Definition: MuonFeatureDetails_p2.h:21
MuonFeatureDetailsCnv
Definition: MuonFeatureDetailsCnv.h:23
MuonFeatureDetails_p2::m_csm_id
std::vector< uint32_t > m_csm_id
Definition: MuonFeatureDetails_p2.h:189
MuonFeatureDetails_p2::m_Address
int m_Address
Definition: MuonFeatureDetails_p2.h:70
mdthit::m_mdt_tube_z
float m_mdt_tube_z
Definition: MuonFeatureDetails_p2.h:30
MuonFeatureDetails_p2::m_extension0
std::vector< uint32_t > m_extension0
Definition: MuonFeatureDetails_p2.h:177
MuonFeatureDetails_p2::mdhv
std::vector< mdthit > mdhv
Definition: MuonFeatureDetails_p2.h:246
MuonFeatureDetails_p2::m_lvl1_emulation
std::vector< uint32_t > m_lvl1_emulation
Definition: MuonFeatureDetails_p2.h:187
MuonFeatureDetails_p2::MuonFeatureDetails_p2
MuonFeatureDetails_p2()
Definition: MuonFeatureDetails_p2.h:56
tgchit::m_tgc_rho_hit_in_seg
unsigned int m_tgc_rho_hit_in_seg
Definition: MuonFeatureDetails_p2.h:38
MuonFeatureDetails.h
mdthit::m_mdt_tube_residual
float m_mdt_tube_residual
Definition: MuonFeatureDetails_p2.h:31
padhit::m_pad_hit_x
float m_pad_hit_x
Definition: MuonFeatureDetails_p2.h:19
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
MuonFeatureDetails_p2::m_allTheUInts
uint32_t m_allTheUInts[13]
Definition: MuonFeatureDetails_p2.h:88
tgchit::m_tgc_phi_hit_width
float m_tgc_phi_hit_width
Definition: MuonFeatureDetails_p2.h:47
mdthit
Definition: MuonFeatureDetails_p2.h:26
MuonFeatureDetails_p2::m_st_phi
std::vector< std::vector< float > > m_st_phi
Definition: MuonFeatureDetails_p2.h:259
tgchit::m_tgc_rho_hit_r
float m_tgc_rho_hit_r
Definition: MuonFeatureDetails_p2.h:41
padhit::m_pad_hit_p
float m_pad_hit_p
Definition: MuonFeatureDetails_p2.h:23
MuonFeatureDetails_p2::m_radMax
std::vector< std::vector< float > > m_radMax
Definition: MuonFeatureDetails_p2.h:256
mdthit::m_mdt_tube_space
float m_mdt_tube_space
Definition: MuonFeatureDetails_p2.h:33
MuonFeatureDetails_p2::m_extension6
std::vector< uint32_t > m_extension6
Definition: MuonFeatureDetails_p2.h:183
MuonFeatureDetails_p2::m_zetaMin
std::vector< std::vector< float > > m_zetaMin
Definition: MuonFeatureDetails_p2.h:253
MuonFeatureDetails_p2::m_radMin
std::vector< std::vector< float > > m_radMin
Definition: MuonFeatureDetails_p2.h:255
padhit::m_pad_hit_code
unsigned int m_pad_hit_code
Definition: MuonFeatureDetails_p2.h:18
MuonFeatureDetails_p2::tgcInnVrho
std::vector< tgchit > tgcInnVrho
Definition: MuonFeatureDetails_p2.h:211
mdthit::m_mdt_onlineId
unsigned int m_mdt_onlineId
Definition: MuonFeatureDetails_p2.h:27
mdthit::m_mdt_tube_sigma
float m_mdt_tube_sigma
Definition: MuonFeatureDetails_p2.h:34
MuonFeatureDetails_p2::m_allTheLongs
long m_allTheLongs[5]
Definition: MuonFeatureDetails_p2.h:96
MuonFeatureDetails_p2::m_allTheFloats
float m_allTheFloats[65]
Definition: MuonFeatureDetails_p2.h:175
MuonFeatureDetails_p2::m_extension1
std::vector< uint32_t > m_extension1
Definition: MuonFeatureDetails_p2.h:178
MuonFeatureDetails_p2::m_extension9
std::vector< uint32_t > m_extension9
Definition: MuonFeatureDetails_p2.h:186
mdthit::m_mdt_tube_time
float m_mdt_tube_time
Definition: MuonFeatureDetails_p2.h:32
MuonFeatureDetails_p2::tgcMidVphi
std::vector< tgchit > tgcMidVphi
Definition: MuonFeatureDetails_p2.h:235
MuonFeatureDetails_p2
Definition: MuonFeatureDetails_p2.h:51
MuonFeatureDetails_p2::m_chamber_type_2
std::vector< std::vector< int > > m_chamber_type_2
Definition: MuonFeatureDetails_p2.h:249
MuonFeatureDetails_p2::m_extension4
std::vector< uint32_t > m_extension4
Definition: MuonFeatureDetails_p2.h:181
MuonFeatureDetails_p2::m_removed_rob_id
std::vector< uint32_t > m_removed_rob_id
Definition: MuonFeatureDetails_p2.h:192
MuonFeatureDetails_p2::tgcMidVrho
std::vector< tgchit > tgcMidVrho
Definition: MuonFeatureDetails_p2.h:227
padhit::m_pad_hit_onlineId
unsigned int m_pad_hit_onlineId
Definition: MuonFeatureDetails_p2.h:17
tgchit::m_tgc_rho_hit_phi
float m_tgc_rho_hit_phi
Definition: MuonFeatureDetails_p2.h:40
padhit::m_pad_hit_y
float m_pad_hit_y
Definition: MuonFeatureDetails_p2.h:20
MuonFeatureDetails_p2::tgcInnVphi
std::vector< tgchit > tgcInnVphi
Definition: MuonFeatureDetails_p2.h:219
MuonFeatureDetails_p2::m_extension3
std::vector< uint32_t > m_extension3
Definition: MuonFeatureDetails_p2.h:180
MuonFeatureDetails_p2::m_extension2
std::vector< uint32_t > m_extension2
Definition: MuonFeatureDetails_p2.h:179
MuonFeatureDetails::AlgoId
AlgoId
Definition: MuonFeatureDetails.h:24
tgchit::m_tgc_phi_hit_r
float m_tgc_phi_hit_r
Definition: MuonFeatureDetails_p2.h:45
MuonFeatureDetails_p2::m_pos
std::vector< std::vector< int > > m_pos
Definition: MuonFeatureDetails_p2.h:250
padhit
Definition: MuonFeatureDetails_p2.h:16
tgchit::m_tgc_rho_hit_width
float m_tgc_rho_hit_width
Definition: MuonFeatureDetails_p2.h:43
mdthit::m_mdt_tube_r
float m_mdt_tube_r
Definition: MuonFeatureDetails_p2.h:29
mdthit::m_mdt_offlineId
unsigned int m_mdt_offlineId
Definition: MuonFeatureDetails_p2.h:28
MuonFeatureDetails_p2::m_etaMin
std::vector< std::vector< float > > m_etaMin
Definition: MuonFeatureDetails_p2.h:257
MuonFeatureDetails_p2::m_extension5
std::vector< uint32_t > m_extension5
Definition: MuonFeatureDetails_p2.h:182
tgchit::m_tgc_phi_hit_phi
float m_tgc_phi_hit_phi
Definition: MuonFeatureDetails_p2.h:44
tgchit::m_tgc_phi_hit_in_seg
unsigned int m_tgc_phi_hit_in_seg
Definition: MuonFeatureDetails_p2.h:39
tgchit::m_tgc_phi_hit_z
float m_tgc_phi_hit_z
Definition: MuonFeatureDetails_p2.h:46
MuonFeatureDetails_p2::m_etaMax
std::vector< std::vector< float > > m_etaMax
Definition: MuonFeatureDetails_p2.h:258
MuonFeatureDetails_p2::m_extension8
std::vector< uint32_t > m_extension8
Definition: MuonFeatureDetails_p2.h:185
MuonFeatureDetails_p2::m_aw
std::vector< std::vector< float > > m_aw
Definition: MuonFeatureDetails_p2.h:251
MuonFeatureDetails_p2::m_removed_csm_id
std::vector< uint32_t > m_removed_csm_id
Definition: MuonFeatureDetails_p2.h:193
MuonFeatureDetails_p2::m_bw
std::vector< std::vector< float > > m_bw
Definition: MuonFeatureDetails_p2.h:252
MuonFeatureDetails_p2::m_extension7
std::vector< uint32_t > m_extension7
Definition: MuonFeatureDetails_p2.h:184
MuonFeatureDetails_p2::m_zetaMax
std::vector< std::vector< float > > m_zetaMax
Definition: MuonFeatureDetails_p2.h:254
MuonFeatureDetails_p2::m_rob_id
std::vector< uint32_t > m_rob_id
Definition: MuonFeatureDetails_p2.h:188
tgchit::m_tgc_rho_hit_z
float m_tgc_rho_hit_z
Definition: MuonFeatureDetails_p2.h:42
MuonFeatureDetails_p2::m_id
MuonFeatureDetails::AlgoId m_id
Definition: MuonFeatureDetails_p2.h:69
MuonFeatureDetails_p2::m_csm_error
std::vector< uint32_t > m_csm_error
Definition: MuonFeatureDetails_p2.h:191
tgchit
Definition: MuonFeatureDetails_p2.h:37
MuonFeatureDetails_p2::padv
std::vector< padhit > padv
Definition: MuonFeatureDetails_p2.h:203
MuonFeatureDetails_p2::m_st_roads
std::vector< std::vector< float > > m_st_roads
Definition: MuonFeatureDetails_p2.h:260
padhit::m_pad_hit_r
float m_pad_hit_r
Definition: MuonFeatureDetails_p2.h:22
MuonFeatureDetails_p2::m_csm_size
std::vector< uint32_t > m_csm_size
Definition: MuonFeatureDetails_p2.h:190