21 : geometry_p(nullptr) {
27 caloGeometryToken_ = esConsumes<CaloGeometry, CaloGeometryRecord, edm::Transition::BeginRun>();
33 [
this](
edm::InputTag const&
tag) { return consumes<DetIdCollection>(tag); });
37 [
this](
edm::InputTag const&
tag) { return consumes<DetIdCollection>(tag); });
49 edm::LogError(
"WrongGeometry") <<
"could not cast the subdet geometry to preshower geometry";
53 topology_p = std::make_unique<EcalPreshowerTopology>();
60 auto output = std::make_unique<EcalRecHitCollection>();
67 for (reco::SuperClusterCollection::const_iterator isc = eeSuperClusters->begin(); isc != eeSuperClusters->end();
71 if (fabs(isc->eta()) < 1.65 || fabs(isc->eta()) > 2.6)
77 for (; ibc != isc->clustersEnd(); ++ibc) {
100 edm::LogError(
"MissingInput") <<
"no reason to skip detid from : (" <<
labels.module <<
", "
101 <<
labels.productInstance <<
", " <<
labels.process <<
")" << std::endl;
112 for (
const auto&
hit : *ESRecHits_) {
113 if (
hit.recoFlag() == 1 ||
hit.recoFlag() == 14 ||
114 (
hit.recoFlag() <= 10 &&
hit.recoFlag() >= 5)) {
122 e.getByToken(
token, detId);
126 edm::LogError(
"MissingInput") <<
"no reason to skip detid from : (" <<
labels.module <<
", "
127 <<
labels.productInstance <<
", " <<
labels.process <<
")" << std::endl;
135 for (it = ESRecHits_->begin(); it != ESRecHits_->end(); ++it) {
148 map<DetId, const EcalRecHit*>::iterator it;
149 map<DetId, int>::iterator itu;
165 strip1 = theESNav1.north();
167 strip2 = theESNav2.east();
168 }
else if (row == -1) {
170 strip1 = theESNav1.south();
172 strip2 = theESNav2.west();
181 for (
int i = 0;
i < 15; ++
i) {
182 next = theESNav1.east();
192 theESNav1.setHome(strip1);
194 for (
int i = 0;
i < 15; ++
i) {
195 next = theESNav1.west();
210 for (
int i = 0;
i < 15; ++
i) {
211 next = theESNav2.north();
221 theESNav2.setHome(strip2);
223 for (
int i = 0;
i < 15; ++
i) {
224 next = theESNav2.south();