36 ps.
getParameter<std::vector<edm::InputTag>>(
"interestingDetIds"),
38 return consumes<DetIdCollection>(tag);
42 interestingDetIdCollectionsNotToClean_ =
edm::vector_transform(ps.getParameter<std::vector<edm::InputTag>>(
"interestingDetIdsNotToClean"),
44 {
return consumes<DetIdCollection>(tag); }
47 produces< EcalRecHitCollection > (OutputLabelES_);
62 "could not cast the subdet geometry to preshower geometry";
82 for (reco::SuperClusterCollection::const_iterator isc = eeSuperClusters->begin(); isc != eeSuperClusters->end(); ++isc) {
85 if (fabs(isc->eta()) < 1.65 || fabs(isc->eta()) > 2.6)
continue;
90 for ( ; ibc != isc->clustersEnd(); ++ibc ) {
121 << labels.
process <<
")" << std::endl;
133 for(
const auto&
hit : *ESRecHits_) {
134 if(
hit.recoFlag()==1 ||
hit.recoFlag()==14 || (
hit.recoFlag()<=10 &&
hit.recoFlag()>=5)){
148 << labels.
process <<
")" << std::endl;
157 for (it = ESRecHits_->begin(); it != ESRecHits_->end(); ++it) {
159 output->push_back(*it);
173 map<DetId,const EcalRecHit*>::iterator it;
174 map<DetId, int>::iterator itu;
190 if (strip2 !=
ESDetId(0)) strip2 = theESNav2.
east();
191 }
else if (row == -1) {
193 if (strip2 !=
ESDetId(0)) strip2 = theESNav2.
west();
202 for (
int i=0;
i<15; ++
i) {
203 next = theESNav1.
east();
215 for (
int i=0;
i<15; ++
i) {
216 next = theESNav1.
west();
232 for (
int i=0;
i<15; ++
i) {
233 next = theESNav2.
north();
245 for (
int i=0;
i<15; ++
i) {
246 next = theESNav2.
south();
T getParameter(std::string const &) const
virtual void beginRun(edm::Run const &, const edm::EventSetup &) overridefinal
bool getByToken(EDGetToken token, Handle< PROD > &result) const
std::vector< edm::EDGetTokenT< DetIdCollection > > interestingDetIdCollectionsNotToClean_
std::vector< edm::EDGetTokenT< DetIdCollection > > interestingDetIdCollections_
std::vector< EcalRecHit >::const_iterator const_iterator
const char * productInstance
CaloSubdetectorTopology * topology_p
auto vector_transform(std::vector< InputType > const &input, Function predicate) -> std::vector< typename std::remove_cv< typename std::remove_reference< decltype(predicate(input.front()))>::type >::type >
void collectIds(const ESDetId strip1, const ESDetId strip2, const int &row=0)
void setHome(const T &startingPoint)
set the starting position
std::string OutputLabelES_
std::vector< SuperCluster > SuperClusterCollection
collection of SuperCluser objectr
virtual ~ReducedESRecHitCollectionProducer()
T west() const
move the navigator west
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
virtual DetId getClosestCellInPlane(const GlobalPoint &r, int plane) const
T south() const
move the navigator south
T east() const
move the navigator east
void home() const
move the navigator back to the starting point
T const * product() const
edm::EDGetTokenT< ESRecHitCollection > InputRecHitES_
edm::EDGetTokenT< reco::SuperClusterCollection > InputSuperClusterEE_
void produce(edm::Event &e, const edm::EventSetup &c)
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
ESHandle< TrackerGeometry > geometry
std::set< DetId > collectedIds_
T north() const
move the navigator north
const EcalPreshowerGeometry * geometry_p
ReducedESRecHitCollectionProducer(const edm::ParameterSet &pset)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point