|
|
Go to the documentation of this file. 1 #ifndef RecoParticleFlow_PFClusterProducer_PFHGCalRecHitCreator_h
2 #define RecoParticleFlow_PFClusterProducer_PFHGCalRecHitCreator_h
25 template <
typename DET, PFLayer::Layer Layer, DetId::Detector det,
unsigned subdet>
35 std::unique_ptr<reco::PFRecHitCollection>& cleaned,
53 unsigned skipped_rechits = 0;
54 for (
const auto& hgrh :
rechits) {
55 const DET detid(hgrh.detid());
57 if (det != detid.det()
or (subdet != 0 and subdet != detid.subdetId())) {
59 <<
"det expected: " << det <<
" det gotten: " << detid.det() <<
" ; "
60 <<
"subdet expected: " << subdet <<
" subdet gotten: " << detid.subdetId() << std::endl;
63 double energy = hgrh.energy();
64 double time = hgrh.time();
66 auto thisCell =
geom->getSubdetectorGeometry(det, subdet)->getGeometry(detid);
70 LogDebug(
"PFHGCalRecHitCreator") <<
"warning detid " << detid.rawId() <<
" not found in geometry" << std::endl;
77 bool rcleaned =
false;
91 cleaned->push_back(rh);
93 edm::LogInfo(
"HGCalRecHitCreator") <<
"Skipped " << skipped_rechits <<
" out of " <<
rechits.size() <<
" rechits!"
95 edm::LogInfo(
"HGCalRecHitCreator") <<
"Created " <<
out->size() <<
" PFRecHits!" << std::endl;
T const * product() const
PFHGCalRecHitCreator< HGCSiliconDetId, PFLayer::HGCAL, DetId::HGCalHSi, ForwardEmpty > PFHGCalHSiRecHitCreator
hgcal::RecHitTools recHitTools_
PFHGCalRecHitCreator< HcalDetId, PFLayer::HGCAL, DetId::Hcal, HcalEndcap > PFHGCHEBRecHitCreator
std::string geometryInstance_
PFHGCalRecHitCreator< HGCalDetId, PFLayer::HGCAL, DetId::Forward, HGCEE > PFHGCEERecHitCreator
Log< level::Info, false > LogInfo
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
std::vector< std::unique_ptr< PFRecHitQTestBase > > qualityTests_
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
PFHGCalRecHitCreator< HGCalDetId, PFLayer::HGCAL, DetId::Forward, HGCHEF > PFHGCHEFRecHitCreator
PFHGCalRecHitCreator< HGCScintillatorDetId, PFLayer::HGCAL, DetId::HGCalHSc, ForwardEmpty > PFHGCalHScRecHitCreator
PFHGCalRecHitCreator(const edm::ParameterSet &iConfig, edm::ConsumesCollector &iC)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
T getParameter(std::string const &) const
PFHGCalRecHitCreator< HGCSiliconDetId, PFLayer::HGCAL, DetId::HGCalEE, ForwardEmpty > PFHGCalEERecHitCreator
Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClus...
edm::EDGetTokenT< HGCRecHitCollection > recHitToken_