Go to the documentation of this file. 1 #ifndef RecoParticleFlow_PFClusterProducer_PFEcalBarrelRecHitCreator_h
2 #define RecoParticleFlow_PFClusterProducer_PFEcalBarrelRecHitCreator_h
34 if (not srF.label().empty())
40 std::unique_ptr<reco::PFRecHitCollection>& cleaned,
62 for (
const auto& erh : *recHitHandle) {
63 const DetId& detid = erh.detid();
64 auto energy = erh.energy();
65 auto time = erh.time();
66 auto flags = erh.flagsBits();
73 throw cms::Exception(
"PFEcalBarrelRecHitCreator") <<
"detid " << detid.
rawId() <<
"not found in geometry";
78 auto& rh =
out->back();
80 bool rcleaned =
false;
85 if (!qtest->test(rh, erh, rcleaned,
hi)) {
T const * product() const
edm::EDGetTokenT< EBSrFlagCollection > srFlagToken_
void beginEvent(const edm::Event &event, const edm::EventSetup &setup)
PFEcalBarrelRecHitCreator(const edm::ParameterSet &iConfig, edm::ConsumesCollector &iC)
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
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)
bool isHighInterest(const EBDetId &detid)
void init(const edm::EventSetup &es) override
const EcalTrigTowerConstituentsMap * triggerTowerMap_
virtual std::shared_ptr< const CaloCellGeometry > getGeometry(const DetId &id) const
Get the cell geometry of a given detector id. Should return false if not found.
EcalTrigTowerDetId towerOf(const DetId &id) const
Get the tower id for this det id (or null if not known)
T getParameter(std::string const &) const
EcalTrigTowerDetId readOutUnitOf(const EBDetId &detid) const
constexpr uint32_t rawId() const
get the raw id
static const int SRF_FULL
edm::EDGetTokenT< EcalRecHitCollection > recHitToken_
edm::Handle< EBSrFlagCollection > srFlagHandle_