72 return StatusCode::SUCCESS;
79 return StatusCode::SUCCESS;
85 const EventContext& ctx = Gaudi::Hive::currentContext();
88 auto badandmissingCellsGeomMap = std::make_unique<jet::CaloCellFastMap>();
89 jet::cellset_t & badandmissingCells = badandmissingCellsGeomMap->cells();
90 badandmissingCellsGeomMap->init(
m_rmax);
93 const std::vector<Identifier> & tiledisconnected =
m_tileCabling->disconnectedCells();
94 badandmissingCells.insert(tiledisconnected.begin(), tiledisconnected.end());
112 if ( !cc.isValid() ) {
113 ATH_MSG_ERROR(
"Unable to retrieve CaloCellContainer AllCalo from event store.");
119 for(; it!=itE; ++it){
120 if( (*it)->badcell() ) {
122 badandmissingCells.insert( c->ID() );
141 std::vector<Identifier>::const_iterator idItr = calo_id->
cell_begin();
142 std::vector<Identifier>::const_iterator idItrE = calo_id->
cell_end();
143 for(; idItr!=idItrE; ++idItr){
156 badandmissingCells.insert( *idItr );
162 jet::cellset_t::iterator lit = badandmissingCells.begin();
163 jet::cellset_t::iterator litE = badandmissingCells.end();
164 for( ; lit != litE; ++lit){
167 badandmissingCellsGeomMap->insert( p );
172 ATH_MSG(
DEBUG ) <<
" total bad and missing "<< badandmissingCells.size() <<
" "<< badandmissingCellsGeomMap->size() <<
endmsg;
175 StatusCode
sc = badCellMap.
record(std::move(badandmissingCellsGeomMap));
176 if (
sc.isFailure()) {
177 ATH_MSG_ERROR(
"Unable to record badandmissingCellsGeomMap in event store: "
#define ATH_CHECK
Evaluate an expression and check for errors.
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
LArBadXCont< LArBadChannel > LArBadChannelCont
Handle class for recording to StoreGate.
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
BitWord packedData() const
Container class for CaloCell.
id_iterator cell_begin() const
begin iterator over full set of Identifiers (LAr + Tiles)
id_iterator cell_end() const
end iterator over full set of Identifiers (LAr + Tiles)
bool is_tile(const Identifier id) const
test if the id belongs to the Tiles
Helper class for offline cell identifiers.
Data object for each calorimeter readout cell.
This class groups all DetDescr information related to a CaloCell.
CaloCell_ID::CaloSample getSampling() const
cell sampling
float eta() const
cell eta
float phi() const
cell phi
const CaloDetDescrElement * get_element(const Identifier &cellId) const
get element by its identifier
This class provides the client interface for accessing the detector description information common to...
const CaloCell_ID * getCaloCell_ID() const
get calo cell ID helper
DataModel_detail::const_iterator< DataVector > const_iterator
BitWord packedData() const
LArBC_t offlineStatus(const Identifier id) const
Query the status of a particular channel by offline ID This is the main client access method.
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
std::unordered_set< Identifier > cellset_t
a cell position for the geometric map of missing/bad cells