56 double barrelSeedThreshold = ps.
getParameter<
double>(
"IslandBarrelSeedThr");
57 double endcapSeedThreshold = ps.
getParameter<
double>(
"IslandEndcapSeedThr");
59 const std::vector<std::string> flagnames =
60 ps.
getParameter<std::vector<std::string> >(
"RecHitFlagToBeExcluded");
62 const std::vector<int> v_chstatus=
63 StringToEnumValue<EcalRecHit::Flags>(flagnames);
74 bool reassignSeedCrysToClusterItSeeds=
false;
75 if(ps.
exists(
"reassignSeedCrysToClusterItSeeds")) reassignSeedCrysToClusterItSeeds = ps.
getParameter<
bool>(
"reassignSeedCrysToClusterItSeeds");
79 island_p =
new Multi5x5ClusterAlgo(barrelSeedThreshold, endcapSeedThreshold, v_chstatus, posCalculator_,reassignSeedCrysToClusterItSeeds);
110 evt.
getByLabel(hitProducer_, hitCollection_, rhcHandle);
113 edm::LogError(
"MissingProduct") <<
"could not get a handle on the EcalRecHitCollection! : " ;;
140 topology_p =
new EcalBarrelTopology(geoHandle);
145 topology_p =
new EcalEndcapTopology(geoHandle);
153 clusters =
island_p->
makeClusters(hitCollection_p, geometry_p, topology_p, geometryES_p, detector);
157 clusters_p->assign(clusters.begin(), clusters.end());
T getParameter(std::string const &) const
Multi5x5ClusterProducer(const edm::ParameterSet &ps)
void clusterizeECALPart(edm::Event &evt, const edm::EventSetup &es, const std::string &hitProducer, const std::string &hitCollection, const std::string &clusterCollection, const reco::CaloID::Detectors detector)
std::vector< reco::BasicCluster > makeClusters(const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry, const CaloSubdetectorTopology *topology_p, const CaloSubdetectorGeometry *geometryES_p, reco::CaloID::Detectors detector, bool regional=false, const std::vector< EcalEtaPhiRegion > ®ions=std::vector< EcalEtaPhiRegion >())
std::string endcapHitProducer_
bool exists(std::string const ¶meterName) const
checks if a parameter exists
const EcalRecHitCollection * getCollection(edm::Event &evt, const std::string &hitProducer_, const std::string &hitCollection_)
PositionCalc posCalculator_
std::string barrelClusterCollection_
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
virtual void produce(edm::Event &, const edm::EventSetup &)
std::string barrelHitProducer_
std::string barrelHitCollection_
Multi5x5ClusterAlgo * island_p
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
std::string endcapClusterCollection_
std::string endcapHitCollection_
std::vector< BasicCluster > BasicClusterCollection
collection of BasicCluster objects
T const * product() const
~Multi5x5ClusterProducer()