diff --git a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx index 19abcba3be307afe08650925754f8db551397782..e6ea3c6698c6878ac77d4f2c76006f7308d548f6 100644 --- a/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx +++ b/MuonSpectrometer/MuonConditions/MuonCondGeneral/MuonCondData/src/MdtCondDbData.cxx @@ -260,8 +260,8 @@ MdtCondDbData::isGoodChannel(const MdtIdHelper* idHelper, const Identifier & Id) if(not isGoodTube (Id )) return false; //if(not isGoodLayer (layerId )) return false; if(not isGoodMultilayer(multilayerId)) return false; - if(not isGoodChamber (chamberId )) return false; - //if(not isGoodStation (stationId )) return false; + // if(not isGoodChamber (chamberId )) return false; // will fail if any channel in same chamber is off + if(not isGoodStation (chamberId )) return false; return true; } @@ -298,6 +298,9 @@ MdtCondDbData::isGoodStation(const Identifier & Id) const{ } // isGoodChamber +/// this method probably doesn't do what you expect it to - it returns whether there is a +/// bad multilayer/tube inside the chamber, not if the full chamber is disabled. For the +/// latter, you need to use isGoodStation. bool MdtCondDbData::isGoodChamber(const Identifier & Id) const{ if(m_cachedDeadChambersId.size()==0) return true; diff --git a/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectSvc/src/MuonStationIntersectSvc.cxx b/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectSvc/src/MuonStationIntersectSvc.cxx index 988369f1af112fc1bd07fc4b42bf7be1907fd364..76e3207a7aeec0786bfa6f6366dd88e905bdf510 100755 --- a/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectSvc/src/MuonStationIntersectSvc.cxx +++ b/MuonSpectrometer/MuonReconstruction/MuonRecUtils/MuonStationIntersectSvc/src/MuonStationIntersectSvc.cxx @@ -63,7 +63,7 @@ const std::vector<std::unique_ptr<Muon::MdtIntersectGeometry> > MuonStationInter // loop over bins, retrieve geometry for( const auto chId : chambers){ if(dbData){ - if(!dbData->isGoodChamber(chId)){ + if(!dbData->isGoodStation(chId)){ ATH_MSG_VERBOSE ("chamber "<<m_idHelper->toString(chId)<<" is dead"); continue; }