9#include "eformat/SourceIdentifier.h"
20 const IInterface* parent) :
21 base_class(
type, name, parent){
34 return StatusCode::SUCCESS;
41 return StatusCode::SUCCESS;
55 std::map<uint32_t, std::vector<const SCT_RDORawData*>> rdoMap;
60 std::vector<std::uint32_t> listOfAllRODs;
62 for (std::uint32_t rod : listOfAllRODs) {
66 for (
const auto* itkStripsRawColl : *itkStripsRDOCont) {
67 if (itkStripsRawColl ==
nullptr) {
72 Identifier idColl{itkStripsRawColl->identify()};
74 uint32_t robid{
m_cabling->getRobIdFromHash(idCollHash)};
75 if (robid == 0)
continue;
77 eformat::helper::SourceIdentifier srcIDROB{robid};
78 eformat::helper::SourceIdentifier srcIDROD{srcIDROB.subdetector_id(), srcIDROB.module_id()};
79 uint32_t rodid{srcIDROD.code()};
81 for (
const auto* rdo : *itkStripsRawColl) {
83 rdoMap[rodid].push_back(rdo);
89 for (
const auto& rodToRDOs : rdoMap) {
90 rod = fullEventAssembler->
getRodData(rodToRDOs.first);
91 m_encoder->fillROD(*rod, rodToRDOs.first, rodToRDOs.second);
93 return StatusCode::SUCCESS;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
This is an Identifier helper class for the SCT subdetector.
InDetRawDataContainer< InDetRawDataCollection< SCT_RDORawData > > SCT_RDO_Container
Template class for assembling a full atlas raw event from subfragments.
void setRodMinorVersion(uint16_t m)
change the ROD minor version
std::vector< uint32_t > RODDATA
ROD data as a vector of unsigned int.
RODDATA * getRodData(uint32_t id)
get a block of ROD data
This is a "hash" representation of an Identifier.