CMS 3D CMS Logo

HGCalTowerProcessor.cc
Go to the documentation of this file.
2 
6 
11 
13 public:
15  towermap3D_ = std::make_unique<HGCalTowerMap3DImpl>();
16  }
17 
19  l1t::HGCalTowerBxCollection& collTowers,
20  const edm::EventSetup& es) override {
22 
23  /* create a persistent vector of pointers to the towerMaps */
24  std::vector<edm::Ptr<l1t::HGCalTowerMap>> towerMapsPtrs;
25  for (unsigned i = 0; i < collHandle->size(); ++i) {
26  edm::Ptr<l1t::HGCalTowerMap> ptr(collHandle, i);
27  towerMapsPtrs.push_back(ptr);
28  }
29 
30  /* call to towerMap3D clustering */
31  towermap3D_->buildTowerMap3D(towerMapsPtrs, collTowers);
32  }
33 
34 private:
36 
37  /* algorithms instances */
38  std::unique_ptr<HGCalTowerMap3DImpl> towermap3D_;
39 };
40 
unsigned size(int bx) const
void run(const edm::Handle< l1t::HGCalTowerMapBxCollection > &collHandle, l1t::HGCalTowerBxCollection &collTowers, const edm::EventSetup &es) override
edm::ESHandle< HGCalTriggerGeometryBase > triggerGeometry_
std::unique_ptr< HGCalTowerMap3DImpl > towermap3D_
T get() const
Definition: EventSetup.h:73
#define DEFINE_EDM_PLUGIN(factory, type, name)
HGCalTowerProcessor(const edm::ParameterSet &conf)