9#include "CoralBase/Blob.h"
24 return StatusCode::SUCCESS;
32 <<
". In theory this should not be called, but may happen"
33 <<
" if multiple concurrent events are being processed out of order.");
34 return StatusCode::SUCCESS;
38 if (!readHandle_ASDpos.
isValid()) {
40 return StatusCode::FAILURE;
45 auto outputCdo = std::make_unique<TgcDigitASDposData>();
46 constexpr std::string_view delimiter{
";"};
47 for(
const auto &[channel, attribute] : **readHandle_ASDpos) {
48 const coral::Blob& blob = attribute[
"bASDPos"].data<coral::Blob>();
49 const std::string blobline{
static_cast<const char*
>(blob.startingAddress())};
51 auto it = std::begin(tokens);
57 uint16_t chamberId = (station << 8) + (
eta << 5) +
phi;
65 outputCdo->stripAsdPos.emplace(chamberId, std::move(strip_pos));
73 outputCdo->wireAsdPos.emplace(chamberId, std::move(wire_pos));
78 ATH_MSG_DEBUG(
"recorded new " << writeHandle.
key() <<
" with range " << writeHandle.
getRange() <<
" into Conditions Store");
80 return StatusCode::SUCCESS;
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ATH_CHECK
Evaluate an expression and check for errors.
Base class for conditions algorithms.
const std::string & key() const
void addDependency(const EventIDRange &range)
const EventIDRange & getRange() const
StatusCode record(const EventIDRange &range, T *t)
record handle, with explicit range DEPRECATED
const DataObjID & fullKey() const
virtual StatusCode initialize() override
SG::ReadCondHandleKey< CondAttrListCollection > m_readKey_ASDpos
SG::WriteCondHandleKey< TgcDigitASDposData > m_writeKey
TgcDigitASDposCondAlg(const std::string &name, ISvcLocator *pSvcLocator)
virtual StatusCode execute(const EventContext &ctx) const override
std::vector< std::string > tokenize(const std::string &the_str, std::string_view delimiters)
Splits the string into smaller substrings.
double atof(std::string_view str)
Converts a string into a double / float.
int atoi(std::string_view str)
Helper functions to unpack numbers decoded in string into integers and doubles The strings are requir...