72{
74
76 int deadba0[32];
77 int deadba1[32];
78 int deadba2[32];
79 int deadbc0[32];
80 int deadbc1[32];
81 int deadbc2[32];
82 int deadea[14];
83 int deadec[14];
84 for (
int i = 0;
i < 32;
i++)
85 {
92 }
93 for (
int i = 0;
i < 14;
i++)
94 {
97 }
98 int ngood = 0;
99
101 {
104
106
107 std::cout << " Status write output file in the same format as input " << std::endl;
108 for (TRTCond::StrawStatusContainer::FlatContainer::const_iterator
109 it = flatcontainer.begin();
110 it != flatcontainer.end(); ++it)
111 {
112 TRTCond::ExpandedIdentifier
id =
it->first;
113 const TRTCond::StrawStatus *
status =
it->second;
115 lay = id.index(2);
116 sec = id.index(3);
117 slay = id.index(4);
122 {
123
124 if (level == 4)
126 if (level == 3)
127 {
129 slay = -1;
130 }
131 if (level == 2)
132 {
134 slay = -1;
135 sec = -1;
136 }
138 }
139 }
141 for (std::vector<Identifier>::const_iterator it =
m_trtid->straw_layer_begin(); it !=
m_trtid->straw_layer_end(); ++it)
142 {
143 int nStrawsInLayer =
m_trtid->straw_max(*it);
144 for (
int i = 0;
i <= nStrawsInLayer;
i++)
145 {
146
147 Identifier
id =
m_trtid->straw_id(*it, i);
149 lay =
m_trtid->layer_or_wheel(
id);
151
152
153 stat =
m_status->getStatus(
id, Gaudi::Hive::currentContext());
155 {
156 if (bec == -2)
157 {
158 deadec[lay]++;
159 }
160 else if (bec == 2)
161 {
162 deadea[lay]++;
163 }
164 else if (bec == -1)
165 {
166 if (lay == 0)
167 deadbc0[sec]++;
168 if (lay == 1)
169 deadbc1[sec]++;
170 if (lay == 2)
171 deadbc2[sec]++;
172 }
173 else if (bec == 1)
174 {
175 if (lay == 0)
176 deadba0[sec]++;
177 if (lay == 1)
178 deadba1[sec]++;
179 if (lay == 2)
180 deadba2[sec]++;
181 }
182 }
183 }
184 }
185 }
186
188 {
192
194 for (std::vector<Identifier>::const_iterator it =
m_trtid->straw_layer_begin(); it !=
m_trtid->straw_layer_end(); ++it)
195 {
196 Identifier
id =
m_trtid->straw_id(*it, 1);
198 lay =
m_trtid->layer_or_wheel(
id);
200 slay =
m_trtid->straw_layer(
id);
201
202 if (sec == 1 && slay == 1)
203 {
204
205 int stat =
int(
m_status->getStatusHT(
id, Gaudi::Hive::currentContext()));
206
208 }
209 }
210
211 for (TRTCond::StrawStatusContainer::FlatContainer::const_iterator
212 it = flatcontainerHT.begin();
213 it != flatcontainerHT.end(); ++it)
214 {
215 TRTCond::ExpandedIdentifier
id =
it->first;
216 const TRTCond::StrawStatus *
status =
it->second;
218 }
219 }
220
222 {
224
226
228
229 std::cout << " StatusPermanent cobntainer first straws: " << std::endl;
230 for (TRTCond::StrawStatusContainer::FlatContainer::const_iterator
231 it = flatcontainerpermanent.begin();
232 it != flatcontainerpermanent.end(); ++it)
233 {
234 TRTCond::ExpandedIdentifier
id =
it->first;
235 const TRTCond::StrawStatus *
status =
it->second;
237 lay = id.index(2);
238 sec = id.index(3);
239 slay = id.index(4);
243 {
244 outfile <<
bec <<
" " << sec <<
" " <<
straw <<
" " << slay <<
" " << lay <<
" " <<
stat << std::endl;
245
246 if (bec == -2)
247 {
248 deadec[lay]++;
249 }
250 else if (bec == 2)
251 {
252 deadea[lay]++;
253 }
254 else if (bec == -1)
255 {
256 if (lay == 0)
257 deadbc0[sec]++;
258 if (lay == 1)
259 deadbc1[sec]++;
260 if (lay == 2)
261 deadbc2[sec]++;
262 }
263 else if (bec == 1)
264 {
265 if (lay == 0)
266 deadba0[sec]++;
267 if (lay == 1)
268 deadba1[sec]++;
269 if (lay == 2)
270 deadba2[sec]++;
271 }
272 }
273 else
274 {
275 ngood++;
276 }
277
278 if (straw == 0 && slay == 0)
279 std::cout <<
bec <<
" " << sec <<
" " <<
straw <<
" " << slay <<
" " << lay <<
" " <<
stat << std::endl;
280 }
282
283 for (std::vector<Identifier>::const_iterator it =
m_trtid->straw_layer_begin(); it !=
m_trtid->straw_layer_end(); ++it)
284 {
285 int nStrawsInLayer =
m_trtid->straw_max(*it);
286 for (
int i = 0;
i <= nStrawsInLayer;
i++)
287 {
288
289 Identifier
id =
m_trtid->straw_id(*it, i);
291 lay =
m_trtid->layer_or_wheel(
id);
293 slay =
m_trtid->straw_layer(
id);
295 stat =
int(
m_status->getStatusPermanent(
id, Gaudi::Hive::currentContext()));
296
297 if (slay == 0 && straw == 0)
298 std::cout <<
bec <<
" " << lay <<
" " << sec <<
" " <<
stat << std::endl;
299 }
300 }
301 }
302
305 ATH_MSG_INFO (
"deadba0[] = { " << deadba0[0] <<
", " << deadba0[1] <<
", " << deadba0[2] <<
", " << deadba0[3] <<
", " <<
306 deadba0[4] << ", " << deadba0[5] << ", " << deadba0[6] << ", " << deadba0[7] << ", " <<
307 deadba0[8] << ", " << deadba0[9] << ", " << deadba0[10] << ", " << deadba0[11] << ", " <<
308 deadba0[12] << ", " << deadba0[13] << ", " << deadba0[14] << ", " << deadba0[15] << ", " <<
309 deadba0[16] << ", " << deadba0[17] << ", " << deadba0[18] << ", " << deadba0[19] << ", " <<
310 deadba0[20] << ", " << deadba0[21] << ", " << deadba0[22] << ", " << deadba0[23] << ", " <<
311 deadba0[24] << ", " << deadba0[25] << ", " << deadba0[26] << ", " << deadba0[27] << ", " <<
312 deadba0[28] << ", " << deadba0[29] << ", " << deadba0[30] << ", " << deadba0[31] << "}; " );
314 ATH_MSG_INFO (
"deadba1[] = { " << deadba1[0] <<
", " << deadba1[1] <<
", " << deadba1[2] <<
", " << deadba1[3] <<
", " <<
315 deadba1[4] << ", " << deadba1[5] << ", " << deadba1[6] << ", " << deadba1[7] << ", " <<
316 deadba1[8] << ", " << deadba1[9] << ", " << deadba1[10] << ", " << deadba1[11] << ", " <<
317 deadba1[12] << ", " << deadba1[13] << ", " << deadba1[14] << ", " << deadba1[15] << ", " <<
318 deadba1[16] << ", " << deadba1[17] << ", " << deadba1[18] << ", " << deadba1[19] << ", " <<
319 deadba1[20] << ", " << deadba1[21] << ", " << deadba1[22] << ", " << deadba1[23] << ", " <<
320 deadba1[24] << ", " << deadba1[25] << ", " << deadba1[26] << ", " << deadba1[27] << ", " <<
321 deadba1[28] << ", " << deadba1[29] << ", " << deadba1[30] << ", " << deadba1[31] << "};");
323 ATH_MSG_INFO (
"deadba2[]= { " << deadba2[0] <<
", " << deadba2[1] <<
", " << deadba2[2] <<
", " << deadba2[3] <<
", " <<
324 deadba2[4] << ", " << deadba2[5] << ", " << deadba2[6] << ", " << deadba2[7] << ", " <<
325 deadba2[8] << ", " << deadba2[9] << ", " << deadba2[10] << ", " << deadba2[11] << ", " <<
326 deadba2[12] << ", " << deadba2[13] << ", " << deadba2[14] << ", " << deadba2[15] << ", " <<
327 deadba2[16] << ", " << deadba2[17] << ", " << deadba2[18] << ", " << deadba2[19] << ", " <<
328 deadba2[20] << ", " << deadba2[21] << ", " << deadba2[22] << ", " << deadba2[23] << ", " <<
329 deadba2[24] << ", " << deadba2[25] << ", " << deadba2[26] << ", " << deadba2[27] << ", " <<
330 deadba2[28] << ", " << deadba2[29] << ", " << deadba2[30] << ", " << deadba2[31] << "}; ");
331
333 ATH_MSG_INFO (
"deadbc0[] = { " << deadbc0[0] <<
", " << deadbc0[1] <<
", " << deadbc0[2] <<
", " << deadbc0[3] <<
", " <<
334 deadbc0[4] << ", " << deadbc0[5] << ", " << deadbc0[6] << ", " << deadbc0[7] << ", " <<
335 deadbc0[8] << ", " << deadbc0[9] << ", " << deadbc0[10] << ", " << deadbc0[11] << ", " <<
336 deadbc0[12] << ", " << deadbc0[13] << ", " << deadbc0[14] << ", " << deadbc0[15] << ", " <<
337 deadbc0[16] << ", " << deadbc0[17] << ", " << deadbc0[18] << ", " << deadbc0[19] << ", " <<
338 deadbc0[20] << ", " << deadbc0[21] << ", " << deadbc0[22] << ", " << deadbc0[23] << ", " <<
339 deadbc0[24] << ", " << deadbc0[25] << ", " << deadbc0[26] << ", " << deadbc0[27] << ", " <<
340 deadbc0[28] << ", " << deadbc0[29] << ", " << deadbc0[30] << ", " << deadbc0[31] << "}; " );
342 ATH_MSG_INFO (
"deadbc1[] = { " << deadbc1[0] <<
", " << deadbc1[1] <<
", " << deadbc1[2] <<
", " << deadbc1[3] <<
", " <<
343 deadbc1[4] << ", " << deadbc1[5] << ", " << deadbc1[6] << ", " << deadbc1[7] << ", " <<
344 deadbc1[8] << ", " << deadbc1[9] << ", " << deadbc1[10] << ", " << deadbc1[11] << ", " <<
345 deadbc1[12] << ", " << deadbc1[13] << ", " << deadbc1[14] << ", " << deadbc1[15] << ", " <<
346 deadbc1[16] << ", " << deadbc1[17] << ", " << deadbc1[18] << ", " << deadbc1[19] << ", " <<
347 deadbc1[20] << ", " << deadbc1[21] << ", " << deadbc1[22] << ", " << deadbc1[23] << ", " <<
348 deadbc1[24] << ", " << deadbc1[25] << ", " << deadbc1[26] << ", " << deadbc1[27] << ", " <<
349 deadbc1[28] << ", " << deadbc1[29] << ", " << deadbc1[30] << ", " << deadbc1[31] << "};");
351 ATH_MSG_INFO (
"deadbc2[]= { " << deadbc2[0] <<
", " << deadbc2[1] <<
", " << deadbc2[2] <<
", " << deadbc2[3] <<
", " <<
352 deadbc2[4] << ", " << deadbc2[5] << ", " << deadbc2[6] << ", " << deadbc2[7] << ", " <<
353 deadbc2[8] << ", " << deadbc2[9] << ", " << deadbc2[10] << ", " << deadbc2[11] << ", " <<
354 deadbc2[12] << ", " << deadbc2[13] << ", " << deadbc2[14] << ", " << deadbc2[15] << ", " <<
355 deadbc2[16] << ", " << deadbc2[17] << ", " << deadbc2[18] << ", " << deadbc2[19] << ", " <<
356 deadbc2[20] << ", " << deadbc2[21] << ", " << deadbc2[22] << ", " << deadbc2[23] << ", " <<
357 deadbc2[24] << ", " << deadbc2[25] << ", " << deadbc2[26] << ", " << deadbc2[27] << ", " <<
358 deadbc2[28] << ", " << deadbc2[29] << ", " << deadbc2[30] << ", " << deadbc2[31] << "}; ");
359
361 ATH_MSG_INFO (
"deadea[] = { " << deadea[0] <<
", " << deadea[1] <<
", " << deadea[2] <<
", " << deadea[3] <<
", " <<
362 deadea[4] << ", " << deadea[5] << ", " << deadea[6] << ", " << deadea[7] << ", " <<
363 deadea[8] << ", " << deadea[9] << ", " << deadea[10] << ", " << deadea[11] << ", " <<
364 deadea[12] << ", " << deadea[13] << "}; ");
366 ATH_MSG_INFO (
"deadec[] = { " << deadec[0] <<
", " << deadec[1] <<
", " << deadec[2] <<
", " << deadec[3] <<
", " <<
367 deadec[4] << ", " << deadec[5] << ", " << deadec[6] << ", " << deadec[7] << ", " <<
368 deadec[8] << ", " << deadec[9] << ", " << deadec[10] << ", " << deadec[11] << ", " <<
369 deadec[12] << ", " << deadec[13] << "}; " );
370 ATH_MSG_INFO(
"Number of good layers or wheels: " << ngood);
371 }
372
373 return StatusCode::SUCCESS;
374}
void getall(typename DaughterContainer::FlatContainer &entries) const
get a flat vector with all values.
std::vector< std::pair< ExpandedIdentifier, const StrawStatus * > > FlatContainer
virtual const StrawStatusContainer * getStrawStatusContainer() const
virtual const StrawStatusContainer * getStrawStatusPermanentContainer() const
virtual const StrawStatusContainer * getStrawStatusHTContainer() const