|
ATLAS Offline Software
|
Go to the documentation of this file.
17 return StatusCode::SUCCESS;
26 if (writeHandle.isValid()) {
28 return StatusCode::SUCCESS;
33 std::unique_ptr<CaloCellPedShift> pedShift=std::make_unique<CaloCellPedShift>(
m_cellId);
39 writeHandle.addDependency(lumiHdl);
41 if (attrListColl->
size() == 0) {
46 if (attrList[
"LBAvInstLumi"].isNull()) {
51 lumi=attrList[
"LBAvInstLumi"].data<
float>() *1
e-3;
58 writeHandle.addDependency(pedShiftHdl);
63 std::pair<unsigned,std::unique_ptr<const CaloCondBlobFlt> >blobCache{999999,
nullptr};
65 for (
size_t iCell=0;iCell<maxCells;++iCell) {
67 const unsigned int iCool =
m_caloCoolIdTool->getCoolChannelId(iCell,subHash);
68 if (iCool!=blobCache.first) {
71 blobCache.first=iCool;
75 for (
size_t iGain=0;iGain<maxGain;++iGain) {
76 const float value = blobCache.second->getCalib(subHash, iGain,
lumi);
81 if(writeHandle.record(std::move(pedShift)).isFailure()) {
82 ATH_MSG_ERROR(
"Could not record CaloCellPedShift object with "
84 <<
" with EventRange " << writeHandle.getRange()
85 <<
" into Conditions Store");
86 return StatusCode::FAILURE;
88 ATH_MSG_INFO(
"recorded new " << writeHandle.key() <<
" with range " << writeHandle.getRange() <<
" into Conditions Store");
90 return StatusCode::SUCCESS;
def retrieve(aClass, aKey=None)
SG::ReadCondHandleKey< CondAttrListCollection > m_pedShiftFolder
void setPedShift(const IdentifierHash hash, const int gain, const float value)
ToolHandle< ICaloCoolIdTool > m_caloCoolIdTool
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool is_tile(const Identifier id) const
test if the id belongs to the Tiles
This class is a collection of AttributeLists where each one is associated with a channel number....
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
SG::ReadCondHandleKey< CondAttrListCollection > m_lumiFolderName
SG::WriteCondHandleKey< CaloCellPedShift > m_pedShiftKey
Gaudi::Property< float > m_lumi0
::StatusCode StatusCode
StatusCode definition for legacy code.
const AttributeList & attributeList(ChanNum chanNum) const
attribute list for a given channel number
StatusCode execute(const EventContext &ctx) const override final
StatusCode initialize(bool used=true)
size_type size() const
number of Chan/AttributeList pairs
const CaloCell_ID * m_cellId
static CaloCondBlobFlt * getInstance(coral::Blob &blob)
Returns a pointer to a non-const CaloCondBlobFlt.
#define ATH_MSG_WARNING(x)
StatusCode initialize() override final
size_type calo_cell_hash_max(void) const
cell 'global' hash table max size