Skip to content

Commit ea18065

Browse files
committed
Fix fedId handling.
1 parent d1083e9 commit ea18065

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

EventFilter/HGCalRawToDigi/plugins/HGCalRawToDigi.cc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,10 @@ void HGCalRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup)
104104
//serial unpacking calls
105105
if (doSerial_) {
106106
for (unsigned fedId = 0; fedId < moduleIndexer.fedCount(); ++fedId) {
107+
const auto& frs = moduleIndexer.getFEDReadoutSequences()[fedId];
108+
if (frs.readoutTypes_.empty()) {
109+
continue;
110+
}
107111
const auto& fed_data = raw_data.FEDData(fedId);
108112
fedPacketInfo.view()[fedId].FEDPayload() = fed_data.size();
109113
if (fed_data.size() == 0)
@@ -116,6 +120,10 @@ void HGCalRawToDigi::produce(edm::Event& iEvent, const edm::EventSetup& iSetup)
116120
else {
117121
oneapi::tbb::this_task_arena::isolate([&]() {
118122
oneapi::tbb::parallel_for(0U, moduleIndexer.fedCount(), [&](unsigned fedId) {
123+
const auto& frs = moduleIndexer.getFEDReadoutSequences()[fedId];
124+
if (frs.readoutTypes_.empty()) {
125+
return;
126+
}
119127
const auto& fed_data = raw_data.FEDData(fedId);
120128
fedPacketInfo.view()[fedId].FEDPayload() = fed_data.size();
121129
if (fed_data.size() == 0)

RecoLocalCalo/HGCalRecAlgos/plugins/HGCalConfigurationESProducer.cc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ class HGCalConfigurationESProducer : public edm::ESProducer, public edm::EventSe
9797
// follow indexing by HGCalMappingModuleIndexer
9898
// HGCalConfiguration = container class holding FED structs of ECON-D structs of eRx structs
9999
std::unique_ptr<HGCalConfiguration> config_ = std::make_unique<HGCalConfiguration>();
100+
config_->feds.resize(moduleMap.getMaxFEDSize());
100101
for (std::size_t fedid = 0; fedid < moduleMap.getMaxFEDSize(); ++fedid) {
101102
// sanity checks
102103
if (moduleMap.getFEDReadoutSequences()[fedid].readoutTypes_.empty()) // check if FED exists (non-empty)
@@ -153,7 +154,7 @@ class HGCalConfigurationESProducer : public edm::ESProducer, public edm::EventSe
153154
fed.econds[imod] = mod; // add to FED's vector<HGCalECONDConfig> of ECON-D modules
154155
}
155156

156-
config_->feds.push_back(fed); // add to config's vector of HGCalFedConfig FEDs
157+
config_->feds[fedid] = fed; // add to config's vector of HGCalFedConfig FEDs
157158
}
158159

159160
// consistency check

0 commit comments

Comments
 (0)