CMS 3D CMS Logo

HGCalTowerMapProcessor.cc
Go to the documentation of this file.
2 
6 
10 
12 public:
14  towermap2D_ = std::make_unique<HGCalTowerMap2DImpl>(conf.getParameterSet("towermap_parameters"));
15  }
16 
18  l1t::HGCalTowerMapBxCollection& collTowerMap) override {
19  towermap2D_->setGeometry(geometry());
20 
21  /* create a persistent vector of pointers to the trigger-sums */
22  std::vector<edm::Ptr<l1t::HGCalTriggerSums>> triggerSumsPtrs;
23  for (unsigned i = 0; i < collHandle->size(); ++i) {
24  edm::Ptr<l1t::HGCalTriggerSums> ptr(collHandle, i);
25  triggerSumsPtrs.push_back(ptr);
26  }
27 
28  /* call to towerMap2D clustering */
29  towermap2D_->buildTowerMap2D(triggerSumsPtrs, collTowerMap);
30  }
31 
32 private:
33  /* algorithms instances */
34  std::unique_ptr<HGCalTowerMap2DImpl> towermap2D_;
35 };
36 
std::unique_ptr< HGCalTowerMap2DImpl > towermap2D_
ParameterSet const & getParameterSet(std::string const &) const
unsigned size(int bx) const
void run(const edm::Handle< l1t::HGCalTriggerSumsBxCollection > &collHandle, l1t::HGCalTowerMapBxCollection &collTowerMap) override
HGCalTowerMapProcessor(const edm::ParameterSet &conf)
const HGCalTriggerGeometryBase * geometry() const
#define DEFINE_EDM_PLUGIN(factory, type, name)