18#include "GaudiKernel/Bootstrap.h"
19#include "GaudiKernel/ISvcLocator.h"
20#include "GaudiKernel/IMessageSvc.h"
21#include "GaudiKernel/IDataProviderSvc.h"
66 return StatusCode::SUCCESS;
111 return StatusCode::SUCCESS;
121 return StatusCode::SUCCESS;
137 std::vector<Identifier> id_vec;
138 std::map<Identifier, int> id_map;
139 std::map<Identifier, int>::iterator map_it;
142 bool no_invalid =
true;
143 bool no_alien =
true;
152 ATH_MSG_INFO(
"*************************************************************" );
153 ATH_MSG_INFO(
"Investigate CalibHit IDs from LAr Inactive CalibHit Container" );
154 ATH_MSG_INFO(
"*************************************************************" );
171 ATH_MSG_INFO(
"***********************************************************" );
172 ATH_MSG_INFO(
"Investigate CalibHit IDs from LAr Active CalibHit Container" );
173 ATH_MSG_INFO(
"***********************************************************" );
192 ATH_MSG_INFO(
"**************************************************************" );
193 ATH_MSG_INFO(
"Investigate CalibHit IDs from Tile Inactive CalibHit container" );
194 ATH_MSG_INFO(
"**************************************************************" );
211 ATH_MSG_INFO(
"************************************************************" );
212 ATH_MSG_INFO(
"Investigate CalibHit IDs from Tile Active CalibHit container" );
213 ATH_MSG_INFO(
"************************************************************" );
232 ATH_MSG_INFO(
"*******************************************************" );
233 ATH_MSG_INFO(
"Investigate CalibHit IDs from LAr DM CalibHit Container" );
234 ATH_MSG_INFO(
"*******************************************************" );
251 ATH_MSG_INFO(
"********************************************************" );
252 ATH_MSG_INFO(
"Investigate CalibHit IDs from Tile DM CalibHit Container" );
253 ATH_MSG_INFO(
"********************************************************" );
271 for(; it != end; ++it) {
332 for (
int iter=0; iter<static_cast<int>(id_vec.size()); iter++) {
333 if(
id == id_vec[iter]) {
335 if(id_map.find(
id)==id_map.end()) {
336 id_map.insert(std::make_pair(
id,2));
339 map_it=id_map.find(
id);
349 id_vec.push_back(
id);
374 ATH_MSG_INFO(
"------------------------------------- " );
375 ATH_MSG_INFO(
"No invalid Identifiers has been found " );
376 ATH_MSG_INFO(
"------------------------------------- " );
384 ATH_MSG_INFO(
"------------------------------------------------------" );
385 ATH_MSG_INFO(
"No container not-respective Identifiers has been found" );
386 ATH_MSG_INFO(
"------------------------------------------------------" );
392 if(!id_map.empty()) {
394 ATH_MSG_INFO(
"----------------------------------------------- " );
395 ATH_MSG_INFO(
"Found repeated Identifiers | how many times " );
396 ATH_MSG_INFO(
"----------------------------------------------- " );
398 for (
const std::pair<const Identifier, int>& p : id_map) {
405 ATH_MSG_INFO(
"----------------------------------------------- " );
406 ATH_MSG_INFO(
"No repeated CalibHit Identifiers has been found " );
407 ATH_MSG_INFO(
"----------------------------------------------- " );
424 for (
int iter=0; iter !=
static_cast<int>(
m_id_vec.size()); iter++) {
450 ATH_MSG_INFO(
"=================================================" );
451 ATH_MSG_INFO(
"Show all CalibHits Identifiers for current events" );
452 ATH_MSG_INFO(
"=================================================" );
454 for (
int iter=0; iter !=
static_cast<int>(
m_id_vec.size()); iter++) {
482 ATH_MSG_INFO(
"======================================================" );
483 ATH_MSG_INFO(
"Check for the CalibHits Identifiers has been repeated " );
484 ATH_MSG_INFO(
" inside the different CalibHit containers " );
485 ATH_MSG_INFO(
"======================================================" );
490 for (
size_t i=0; i <
m_id_vec.size(); i++) {
501 <<
" is repeated "<<(same+1)<<
" times"
502 <<
" inside different containers " );
511 <<
"in the different containers was found ***" );
#define ATH_CHECK
Evaluate an expression and check for errors.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ServiceHandle< StoreGateSvc > & evtStore()
const ServiceHandle< StoreGateSvc > & detStore() const
boost::transform_iterator< make_const, typename CONT::const_iterator > const_iterator
std::string m_tileInactiveHitContainer
const CaloCalibrationHitContainer * m_LArDMHitCnt
const CaloCalibrationHitContainer * m_TileInactiveHitCnt
const CaloCalibrationHitContainer * m_ActiveHitCnt
std::string m_tiledmHitContainer
const CaloCalibrationHitContainer * m_TileDMHitCnt
CalibHitIDCheck(const std::string &name, ISvcLocator *pSvcLocator)
std::string m_larInactiveHitContainer
virtual ~CalibHitIDCheck()
const AtlasDetectorID * m_id_helper
std::string m_larActiveHitContainer
const CaloCalibrationHitContainer * m_TileActiveHitCnt
std::string m_larDMHitContainer
std::string m_tileActiveHitContainer
const CaloCalibrationHitContainer * m_InactiveHitCnt
DataModel_detail::iterator< DVL > remove(typename DataModel_detail::iterator< DVL > beg, typename DataModel_detail::iterator< DVL > end, const T &value)
Specialization of remove for DataVector/List.