diff --git a/src/algorithms/calorimetry/CalorimeterHitReco.cc b/src/algorithms/calorimetry/CalorimeterHitReco.cc index 758531476d..b1f7d9211c 100644 --- a/src/algorithms/calorimetry/CalorimeterHitReco.cc +++ b/src/algorithms/calorimetry/CalorimeterHitReco.cc @@ -40,17 +40,29 @@ void CalorimeterHitReco::AlgorithmInit(std::shared_ptr& logger) id_dec = id_spec.decoder(); if (!m_sectorField.empty()) { sector_idx = id_dec->index(m_sectorField); - //LOG_INFO(default_cerr_logger) << "Find sector field " << m_sectorField << ", index = " << sector_idx << LOG_END; m_logger->info("Find sector field {}, index = {}", m_sectorField, sector_idx); } if (!m_layerField.empty()) { layer_idx = id_dec->index(m_layerField); - //LOG_INFO(default_cerr_logger) << "Find layer field " << m_layerField << ", index = " << sector_idx << LOG_END; m_logger->info("Find layer field {}, index = {}", m_layerField, sector_idx); } } catch (...) { - //LOG_ERROR(default_cerr_logger) << "Failed to load ID decoder for " << m_readout << LOG_END; - m_logger->error("Failed to load ID decoder for {}", m_readout); + if( !id_dec ) { + m_logger->error("Failed to load ID decoder for {}", m_readout); + std::stringstream readouts; + for (auto r: m_geoSvc->detector()->readouts()) readouts << "\"" << r.first << "\", "; + m_logger->warn("Available readouts: {}", readouts.str() ); + }else { + m_logger->warn("Failed to find field index for {}.", m_readout); + if (!m_sectorField.empty()) { m_logger->warn(" -- looking for sector field \"{}\".", m_sectorField); } + if (!m_layerField.empty()) { m_logger->warn(" -- looking for layer field \"{}\".", m_layerField); } + std::stringstream fields; + for (auto field: id_spec.decoder()->fields()) fields << "\"" << field.name() << "\", "; + m_logger->warn("Available fields: {}", fields.str() ); + m_logger->warn("n.b. The local position, sector id and layer id will not be correct for this."); + m_logger->warn("however, the position, energy, and time values should still be good."); + } + return; } @@ -59,10 +71,8 @@ void CalorimeterHitReco::AlgorithmInit(std::shared_ptr& logger) if (!m_localDetElement.empty()) { try { local = m_geoSvc->detector()->detector(m_localDetElement); - //LOG_INFO(default_cerr_logger) << "local coordinate system from DetElement " << m_localDetElement << LOG_END; m_logger->info("local coordinate system from DetElement {}", m_localDetElement); } catch (...) { - //LOG_ERROR(default_cerr_logger) << "failed to load local coordinate system from DetElement " << m_localDetElement << LOG_END; m_logger->error("failed to load local coordinate system from DetElement {}", m_localDetElement); return; } diff --git a/src/tools/default_flags_table/reco_flags.py b/src/tools/default_flags_table/reco_flags.py index a7e52abc1a..22ac011ef9 100644 --- a/src/tools/default_flags_table/reco_flags.py +++ b/src/tools/default_flags_table/reco_flags.py @@ -222,7 +222,7 @@ ('EEMC:EcalEndcapNTruthClusters:moduleDimZName', '', ''), ('EEMC:EcalEndcapNTruthClusters:samplingFraction', '0.03', '*'), - ('EEMC:EcalEndcapNClusters:input_protoclust_tag', 'EcalEndcapNHits', ''), + ('EEMC:EcalEndcapNClusters:input_protoclust_tag', 'EcalEndcapNIslandProtoClusters', ''), ('EEMC:EcalEndcapNClusters:samplingFraction', '1', ''), ('EEMC:EcalEndcapNClusters:logWeightBase', '3.6', ''), ('EEMC:EcalEndcapNClusters:depthCorrection', '0', ''),