Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
9 #include "CoralBase/Blob.h"
25 return StatusCode::SUCCESS;
34 if (writeHandle.isValid()) {
36 return StatusCode::SUCCESS;
44 return StatusCode::FAILURE;
47 writeHandle.addDependency(readHandle);
56 larOnlineID=scidhelper;
75 std::unique_ptr<LArOnOffIdMapping> onOffMap=std::make_unique<LArOnOffIdMapping>(larOnlineID,calocellID);
78 unsigned nChan=blobOnOff.size()/
sizeof(
uint32_t);
79 const uint32_t* pBlobOnOff=
static_cast<const uint32_t*
>(blobOnOff.startingAddress());
82 ATH_MSG_ERROR(
"Number of channels read from DB (" << nChan <<
") does not match online hash max ("
84 return StatusCode::FAILURE;
88 unsigned nConnected=0;
90 for (
unsigned i=0;
i<nChan;++
i) {
102 ATH_MSG_INFO(
"Done reading online/offline identifier mapping");
103 ATH_MSG_INFO(
"Found " << nChan <<
" online identifier and " << nConnected <<
" offline identifier. "
104 << nChan-nConnected <<
" disconnected channels.");
106 if(writeHandle.record(std::move(onOffMap)).isFailure()) {
107 ATH_MSG_ERROR(
"Could not record LArOnOffMapping object with "
109 <<
" with EventRange " << writeHandle.getRange()
110 <<
" into Conditions Store");
111 return StatusCode::FAILURE;
113 ATH_MSG_INFO(
"recorded new " << writeHandle.key() <<
" with range " << writeHandle.getRange() <<
" into Conditions Store");
115 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
IdentifierHash calo_cell_hash(const Identifier cellId) const
create hash id from 'global' cell id
std::vector< IdentifierHash > m_onlHashToOflHash
const std::string & key() const
Return the StoreGate ID for the referenced object.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode initialize() override
Helper class for offline supercell identifiers.
::StatusCode StatusCode
StatusCode definition for legacy code.
HWIdentifier channel_Id(int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
create channel identifier from fields
Helper class for offline supercell identifiers.
SG::ReadCondHandleKey< AthenaAttributeList > m_readKey
An AttributeList represents a logical row of attributes in a metadata table. The name and type of eac...
Helper class for offline cell identifiers.
SG::WriteCondHandleKey< LArOnOffIdMapping > m_writeKey
virtual StatusCode execute() override
Helper for the Liquid Argon Calorimeter cell identifiers.
size_type channelHashMax(void) const
Define channel hash tables max size.
StatusCode initialize(bool used=true)
Gaudi::Property< bool > m_isSuperCell
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Helper base class for offline cell identifiers.
std::vector< HWIdentifier > m_oflHashToOnline
std::vector< Identifier > m_onlHashToOffline