42 return StatusCode::SUCCESS;
45 const uint32_t
run = ctx.eventID().run_number();
47 EventIDRange eventRange;
48 std::unique_ptr<TileHid2RESrcID> hid2re;
53 auto calibData = std::make_unique<TileCalibData<TileCalibDrawerInt>>();
56 std::vector<std::vector<uint32_t>> allMap;
61 unsigned int nGains = calibDrawer->getNGains();
62 unsigned int nChannels = calibDrawer->getNChans();
63 unsigned int nValues = calibDrawer->getObjSizeUint32();
64 for (
unsigned int channel = 0; channel < nChannels; ++channel) {
65 for (
unsigned int adc = 0; adc < nGains; ++adc) {
66 std::vector<uint32_t> fragMap;
67 fragMap.reserve(nValues);
68 for (
unsigned int i = 0; i < nValues; ++i) {
69 fragMap.push_back( calibDrawer->getData(channel, adc, i) );
71 allMap.emplace_back(std::move(fragMap));
76 hid2re->initialize(allMap);
83 hid2re = std::make_unique<TileHid2RESrcID>(
m_tileHWID, fullMode);
88 <<
" means that we'll scan event for all fragments to create proper map" );
90 bool of2Default{
true};
91 const eformat::FullEventFragment<const uint32_t*> *
event =
m_robSvc->getEvent(ctx);
94 hid2re->setROD2ROBmap(event, of2Default,
msg());
98 hid2re->setROD2ROBmap(event, of2Default,
msg());
102 <<
" means that predefined mapping for run " << fullMode <<
" will be used " );
112 eventRange = EventIDRange(EventIDBase{
run, EventIDBase::UNDEFEVT, EventIDBase::UNDEFNUM, EventIDBase::UNDEFNUM, 0},
113 EventIDBase{
run + 1, EventIDBase::UNDEFEVT, EventIDBase::UNDEFNUM, EventIDBase::UNDEFNUM, 0});
116 hid2re->printSpecial(
msg());
122 <<
" with EventRange " << eventRange
123 <<
" into Conditions Store");
125 return StatusCode::SUCCESS;