Go to the documentation of this file. 1 #ifndef RecoParticleFlow_PFClusterProducer_PFEcalEndcapRecHitCreator_h
2 #define RecoParticleFlow_PFClusterProducer_PFEcalEndcapRecHitCreator_h
36 if (not srF.label().empty())
42 std::unique_ptr<reco::PFRecHitCollection>& cleaned,
64 for (
const auto& erh : *recHitHandle) {
65 const DetId& detid = erh.detid();
66 auto energy = erh.energy();
67 auto time = erh.time();
71 std::shared_ptr<const CaloCellGeometry> thisCell = ecalGeo->
getGeometry(detid);
75 throw cms::Exception(
"PFEcalEndcapRecHitCreator") <<
"detid " << detid.
rawId() <<
"not found in geometry";
80 auto& rh =
out->back();
82 bool rcleaned =
false;
87 if (!qtest->test(rh, erh, rcleaned,
hi)) {
122 int iDCC = EcalElecId.
dccId();
123 int iDccChan = EcalElecId.
towerId();
124 const bool ignoreSingle =
true;
T const * product() const
edm::EDGetTokenT< EESrFlagCollection > srFlagToken_
void beginEvent(const edm::Event &event, const edm::EventSetup &setup)
std::vector< EcalScDetId > getEcalScDetId(int DCCid, int DCC_Channel, bool ignoreSingleCrystal=true) const
void init(const edm::EventSetup &es) override
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
int towerId() const
get the tower id
edm::Handle< EESrFlagCollection > srFlagHandle_
std::vector< std::unique_ptr< PFRecHitQTestBase > > qualityTests_
void importRecHits(std::unique_ptr< reco::PFRecHitCollection > &out, std::unique_ptr< reco::PFRecHitCollection > &cleaned, const edm::Event &iEvent, const edm::EventSetup &iSetup) override
EcalElectronicsId getElectronicsId(const DetId &id) const
Get the electronics id for this det id.
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
PFEcalEndcapRecHitCreator(const edm::ParameterSet &iConfig, edm::ConsumesCollector &iC)
const EcalElectronicsMapping * elecMap_
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.
T getParameter(std::string const &) const
constexpr uint32_t rawId() const
get the raw id
static const int SRF_FULL
edm::EDGetTokenT< EcalRecHitCollection > recHitToken_
bool isHighInterest(const EEDetId &detid)
EcalScDetId readOutUnitOf(const EEDetId &detid) const
const EcalTrigTowerConstituentsMap * eTTmap_