File indexing completed on 2023-03-17 11:12:23
0001 #include "L1Trigger/L1THGCal/interface/backend/HGCalTowerMapImpl_SA.h"
0002
0003 using namespace l1thgcfirmware;
0004
0005 void HGCalTowerMapImplSA::runAlgorithm(const std::vector<HGCalTowerMap>& inputTowerMaps_SA,
0006 std::vector<HGCalTower>& outputTowers_SA) const {
0007
0008 if (inputTowerMaps_SA.empty())
0009 return;
0010 std::vector<HGCalTowerCoord> tower_ids;
0011 for (const auto& tower : inputTowerMaps_SA.front().towers()) {
0012 tower_ids.emplace_back(tower.first, tower.second.eta(), tower.second.phi());
0013 }
0014 HGCalTowerMap towerMap(tower_ids);
0015
0016 for (const auto& map : inputTowerMaps_SA) {
0017 towerMap += map;
0018 }
0019
0020 for (const auto& tower : towerMap.towers()) {
0021 if (tower.second.etEm() > 0 || tower.second.etHad() > 0) {
0022 outputTowers_SA.push_back(tower.second);
0023 }
0024 }
0025 }