19 const std::string &
name,
28 m_disabledModulesMapPixel( nullptr ),
29 m_disabledModulesMapSCT( nullptr ),
30 m_badModulesMapPixel(nullptr),
31 m_errorModulesMapPixel(nullptr),
32 m_errorModulesMapSCT(nullptr),
33 m_totalModulesMapPixel(nullptr),
34 m_totalModulesMapSCT(nullptr),
35 m_totalModulesMapSi(nullptr),
45 msg(MSG::ERROR) <<
"Could not retrieve Pixel ID helper" <<
endmsg;
46 return StatusCode::FAILURE;
49 msg(MSG::ERROR) <<
"Could not retrieve SCT ID helper" <<
endmsg;
50 return StatusCode::FAILURE;
114 return (
status ) ? StatusCode::SUCCESS : StatusCode::FAILURE;
120 return StatusCode::SUCCESS;
143 while (currIt != currEnd) {
152 while (currIt != currEnd) {
164 while (currIt != currEnd) {
173 while (currIt != currEnd) {
185 return StatusCode::SUCCESS;
190 unsigned int lowX = 0;
191 unsigned int highX = 0;
192 unsigned int lowY = 0;
193 unsigned int highY = 0;
198 double edgesEta[200], centerEta[200],
199 edgesPhi[200], centerPhi[200];
201 histo->GetXaxis()->GetLowEdge(edgesEta);
202 histo->GetXaxis()->GetCenter(centerEta);
203 histo->GetYaxis()->GetLowEdge(edgesPhi);
204 histo->GetYaxis()->GetCenter(centerPhi);
207 if ( edgesEta[
i] + widthEta >
module.first.first )
213 if ( edgesEta[
i] >
module.first.second )
219 if ( edgesPhi[
i] + widthPhi >
module.second.first )
225 if ( edgesPhi[
i] >
module.second.second )
230 for (
unsigned int i = lowX;
i < highX;
i++ )
231 for (
unsigned int j = lowY; j < highY; j++ )
234 (((
module.first.second < edgesEta[
i] + widthEta ) ?
module.first.second : (edgesEta[
i] + widthEta) ) -
235 ( (
module.first.first > edgesEta[
i] ) ?
module.first.first : edgesEta[
i] ) ) *
236 (((
module.second.second < edgesPhi[j] + widthPhi ) ?
module.second.second : (edgesPhi[j] + widthPhi) ) -
237 ( (
module.second.first > edgesPhi[j] ) ?
module.second.first : edgesPhi[j] ) )
238 ) / ( widthEta * widthPhi );
239 histo->Fill( centerEta[
i], centerPhi[j],
area );
249 const EventContext& ctx{Gaudi::Hive::currentContext()};
252 if (elements==
nullptr) {
261 for(
const auto& idHash : sctErrors) {
271 moduleGeo.first.first, moduleGeo.first.second,
272 moduleGeo.second.first, moduleGeo.second.second,
289 const EventContext& ctx{Gaudi::Hive::currentContext()};
292 if (elements==
nullptr) {
301 for (;
fit != fitEnd; ++
fit)
312 moduleGeo.first.first, moduleGeo.first.second,
313 moduleGeo.second.first, moduleGeo.second.second,
316 m_disabledGeoPixel.insert( std::pair<IdentifierHash, moduleGeo_t>( waferHash, moduleGeo ) );
326 moduleGeo.first.first, moduleGeo.first.second,
327 moduleGeo.second.first, moduleGeo.second.second,
330 m_errorGeoPixel.insert( std::pair<IdentifierHash, moduleGeo_t>( waferHash, moduleGeo ) );
339 bool altered =
false;
347 if (elements==
nullptr) {
353 std::set<Identifier>::const_iterator
fit = badModules->begin();
354 std::set<Identifier>::const_iterator fitEnd = badModules->end();
357 for (;
fit != fitEnd; ++
fit)
371 moduleGeo.first.first, moduleGeo.first.second,
372 moduleGeo.second.first, moduleGeo.second.second,