50 if ((**fillParamsFolder)[
"BCIDmasks"].isNull()) {
52 return StatusCode::FAILURE;
56 cool::UInt32 nb1 = (**fillParamsFolder)[
"Beam1Bunches"].data<cool::UInt32>();
57 cool::UInt32 nb2 = (**fillParamsFolder)[
"Beam2Bunches"].data<cool::UInt32>();
58 cool::UInt32 ncol = (**fillParamsFolder)[
"LuminousBunches"].data<cool::UInt32>();
64 const coral::Blob& blob = (**fillParamsFolder)[
"BCIDmasks"].data<coral::Blob>();
67 if (
static_cast<cool::UInt32
>( blob.size() ) != 2 * (nb1 + nb2 + ncol)) {
68 ATH_MSG_WARNING(
"BCIDmasks length " << blob.size() <<
" != 2 * " << (nb1+nb2+ncol) );
69 return StatusCode::SUCCESS;
72 const uint16_t* p=
static_cast<const uint16_t*
>(blob.startingAddress());
74 auto fp = std::make_unique<FillParamsCondData>();
77 fp->setBeam1Bunches (p, p+nb1);
81 fp->setBeam2Bunches (p, p+nb2);
85 fp->setLuminousBunches (p, p+ncol);
91 return StatusCode::SUCCESS;