38 template <
typename T1,
typename T2>
42 std::map<uint32_t, std::vector<BaseHit> > output_map;
45 for (
typename MergeCollection::const_iterator clustSet =
inputCollection->begin();
48 DetId detIdObject(clustSet->detId());
51 output_map[detIdObject.rawId()].push_back(*clustIt);
56 for (
typename std::map<uint32_t, std::vector<BaseHit> >::const_iterator outHits = output_map.begin();
57 outHits != output_map.end();
59 DetId detIdObject(outHits->first);
60 typename MergeCollection::FastFiller spc(*
output, detIdObject);
61 for (
const auto &
Hit : outHits->second) {
67 template <
typename T1,
typename T2>
70 std::map<uint32_t, BaseHit> output_map;
76 T2 *akt_calo_obj = &output_map[detIdObject.rawId()];
77 float new_energy = akt_calo_obj->energy() +
recHit->energy();
79 newRecHit.setEnergy(new_energy);
80 *akt_calo_obj = newRecHit;
84 for (
typename std::map<uint32_t, BaseHit>::const_iterator outHits = output_map.begin(); outHits != output_map.end();
86 output->push_back(outHits->second);
92 template <
typename T1,
typename T2>
95 std::map<uint32_t, std::vector<BaseHit> > output_map;
101 output_map[detIdObject].push_back(*
recHit);
105 for (
typename std::map<uint32_t, std::vector<BaseHit> >::const_iterator outHits = output_map.begin();
106 outHits != output_map.end();
109 outHits->second.begin(),
110 outHits->second.end());
115 template <
typename T1,
typename T2>
126 fill_output_obj_tracker(
output, inputCollections,
true);
132 fill_output_obj_tracker(
output, inputCollections);
139 fill_output_obj_calo(
output, inputCollections);
145 fill_output_obj_calo(
output, inputCollections);
151 fill_output_obj_calo(
output, inputCollections);
157 fill_output_obj_calo(
output, inputCollections);
163 fill_output_obj_calo(
output, inputCollections);
169 fill_output_obj_calo(
output, inputCollections);
176 fill_output_obj_muonchamber(
output, inputCollections);
182 fill_output_obj_muonchamber(
output, inputCollections);
188 fill_output_obj_muonchamber(
output, inputCollections);