1 #ifndef RecoParticleFlow_PFClusterProducer_PFEcalRecHitCreatorMaxSample_h 2 #define RecoParticleFlow_PFClusterProducer_PFEcalRecHitCreatorMaxSample_h 26 template <
typename Geometry,PFLayer::Layer Layer,
int Detector>
49 const Geometry *ecalGeo =
dynamic_cast<const Geometry*
>(gTmp);
52 for(
const auto& erh : *recHitHandle ) {
53 const DetId& detid = erh.detid();
54 auto energy = erh.energy();
55 auto time = erh.time();
57 std::shared_ptr<const CaloCellGeometry> thisCell= ecalGeo->getGeometry(detid);
62 <<
"warning detid "<<detid.
rawId()
63 <<
" not found in geometry"<<std::endl;
72 bool rcleaned =
false;
78 if (!qtest->test(rh,erh,rcleaned,hi)) {
89 cleaned->push_back(rh);
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
PFEcalRecHitCreatorMaxSample(const edm::ParameterSet &iConfig, edm::ConsumesCollector &iC)
std::vector< std::unique_ptr< PFRecHitQTestBase > > qualityTests_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
edm::EDGetTokenT< EcalRecHitCollection > recHitToken_
constexpr uint32_t rawId() const
get the raw id
PFEcalRecHitCreatorMaxSample< EcalBarrelGeometry, PFLayer::ECAL_BARREL, EcalBarrel > PFEBRecHitCreatorMaxSample
SeedingLayerSetsHits::SeedingLayer Layer
void importRecHits(std::unique_ptr< reco::PFRecHitCollection > &out, std::unique_ptr< reco::PFRecHitCollection > &cleaned, const edm::Event &iEvent, const edm::EventSetup &iSetup) override
Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClus...
void beginEvent(const edm::Event &event, const edm::EventSetup &setup)
PFEcalRecHitCreatorMaxSample< EcalEndcapGeometry, PFLayer::ECAL_ENDCAP, EcalEndcap > PFEERecHitCreatorMaxSample