142 return StatusCode::SUCCESS;
146 std::unique_ptr<TileEMScale> emsData = std::make_unique<TileEMScale>();
154 EventIDRange oflCisLinRange;
155 std::unique_ptr<TileCalibDataFlt> calibOflCisLin = std::make_unique<TileCalibDataFlt>();
158 emsData->setCalibOflCisLin(std::move(calibOflCisLin));
161 EventIDRange oflCisNlnRange;
162 std::unique_ptr<TileCalibDataFlt> calibOflCisNln = std::make_unique<TileCalibDataFlt>();
165 emsData->setCalibOflCisNln(std::move(calibOflCisNln));
169 EventIDRange oflLasLinRange;
170 std::unique_ptr<TileCalibDataFlt> calibOflLasLin = std::make_unique<TileCalibDataFlt>();
173 emsData->setCalibOflLasLin(std::move(calibOflLasLin));
177 EventIDRange oflLasNlnRange;
178 std::unique_ptr<TileCalibDataFlt> calibOflLasNln = std::make_unique<TileCalibDataFlt>();
181 emsData->setCalibOflLasNln(std::move(calibOflLasNln));
185 EventIDRange oflCesRange;
186 std::unique_ptr<TileCalibDataFlt> calibOflCes = std::make_unique<TileCalibDataFlt>();
189 emsData->setCalibOflCes(std::move(calibOflCes));
193 EventIDRange oflEmsRange;
194 std::unique_ptr<TileCalibDataFlt> calibOflEms = std::make_unique<TileCalibDataFlt>();
197 emsData->setCalibOflEms(std::move(calibOflEms));
200 EventIDRange eventRange = EventIDRange::intersect(oflCisLinRange, oflCisNlnRange,
201 oflLasLinRange, oflLasNlnRange,
202 oflCesRange, oflEmsRange);
207 EventIDRange oflLasFibRange;
208 std::unique_ptr<TileCalibDataFlt> calibOflLasFib = std::make_unique<TileCalibDataFlt>();
211 emsData->setCalibOflLasFib(std::move(calibOflLasFib));
213 eventRange = EventIDRange::intersect(eventRange, oflLasFibRange);
218 EventIDRange onlCisRange;
219 std::unique_ptr<TileCalibDataFlt> calibOnlCis = std::make_unique<TileCalibDataFlt>();
222 emsData->setCalibOnlCis(std::move(calibOnlCis));
224 eventRange = EventIDRange::intersect(eventRange, onlCisRange);
229 EventIDRange onlLasRange;
230 std::unique_ptr<TileCalibDataFlt> calibOnlLas = std::make_unique<TileCalibDataFlt>();
233 emsData->setCalibOnlLas(std::move(calibOnlLas));
235 eventRange = EventIDRange::intersect(eventRange, onlLasRange);
240 EventIDRange onlCesRange;
241 std::unique_ptr<TileCalibDataFlt> calibOnlCes = std::make_unique<TileCalibDataFlt>();
244 emsData->setCalibOnlCes(std::move(calibOnlCes));
246 eventRange = EventIDRange::intersect(eventRange, onlCesRange);
251 EventIDRange onlEmsRange;
252 std::unique_ptr<TileCalibDataFlt> calibOnlEms = std::make_unique<TileCalibDataFlt>();
255 emsData->setCalibOnlEms(std::move(calibOnlEms));
257 eventRange = EventIDRange::intersect(eventRange, onlEmsRange);
261 if(eventRange.start() > eventRange.stop()) {
263 return StatusCode::FAILURE;
266 if (emsData->initialize()) {
267 ATH_MSG_DEBUG(
"TileEMScale object is initialized successfully.");
269 ATH_MSG_ERROR(
"Impossible to inizialize TileEMScale object!");
270 return StatusCode::FAILURE;
273 if(calibEms.
record(eventRange, emsData.release()).isFailure()) {
276 <<
" with EventRange " << eventRange
277 <<
" into Conditions Store");
278 return StatusCode::FAILURE;
283 <<
" with EventRange " << eventRange
284 <<
" into Conditions Store");
287 return StatusCode::SUCCESS;