1 #ifndef RecoParticleFlow_PFClusterProducer_PFEcalBarrelRecHitCreator_h 2 #define RecoParticleFlow_PFClusterProducer_PFEcalBarrelRecHitCreator_h 37 if (not srF.label().empty())
42 std::unique_ptr<reco::PFRecHitCollection>& cleaned,
63 for (
const auto& erh : *recHitHandle) {
64 const DetId& detid = erh.detid();
65 auto energy = erh.energy();
66 auto time = erh.time();
67 auto flags = erh.flagsBits();
74 throw cms::Exception(
"PFEcalBarrelRecHitCreator") <<
"detid " << detid.
rawId() <<
"not found in geometry";
79 auto& rh =
out->back();
81 bool rcleaned =
false;
86 if (!qtest->test(rh, erh, rcleaned,
hi)) {
edm::EDGetTokenT< EBSrFlagCollection > srFlagToken_
edm::ESGetToken< EcalTrigTowerConstituentsMap, IdealGeometryRecord > towerToken_
T getParameter(std::string const &) const
std::vector< std::unique_ptr< PFRecHitQTestBase > > qualityTests_
T const & getData(const ESGetToken< T, R > &iToken) const noexcept(false)
uint32_t cc[maxCellsPerHit]
void importRecHits(std::unique_ptr< reco::PFRecHitCollection > &out, std::unique_ptr< reco::PFRecHitCollection > &cleaned, const edm::Event &iEvent, const edm::EventSetup &iSetup) override
edm::EDGetTokenT< EcalRecHitCollection > recHitToken_
PFEcalBarrelRecHitCreator(const edm::ParameterSet &iConfig, edm::ConsumesCollector &cc)
EcalTrigTowerDetId readOutUnitOf(const EBDetId &detid) const
EcalTrigTowerDetId towerOf(const DetId &id) const
Get the tower id for this det id (or null if not known)
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geomToken_
static const int SRF_FULL
void beginEvent(const edm::Event &event, const edm::EventSetup &setup)
void init(const edm::EventSetup &es) override
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
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.
edm::Handle< EBSrFlagCollection > srFlagHandle_
constexpr uint32_t rawId() const
get the raw id
const EcalTrigTowerConstituentsMap * triggerTowerMap_
bool isHighInterest(const EBDetId &detid)
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly