#include <Multi5x5ClusterAlgo.h>
Classes | |
class | ProtoBasicCluster |
Public Types | |
typedef math::XYZPoint | Point |
point in the space More... | |
Public Member Functions | |
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 >()) |
Multi5x5ClusterAlgo () | |
Multi5x5ClusterAlgo (double ebst, double ecst, std::vector< int > v_chstatus, const PositionCalc &posCalc, bool reassignSeedCrysToClusterItSeeds=false) | |
virtual | ~Multi5x5ClusterAlgo () |
Private Member Functions | |
void | addCrystal (const DetId &det) |
bool | checkMaxima (CaloNavigator< DetId > &navigator, const EcalRecHitCollection *hits) |
void | mainSearch (const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry_p, const CaloSubdetectorTopology *topology_p, const CaloSubdetectorGeometry *geometryES_p) |
void | makeCluster (const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry_p, const CaloSubdetectorGeometry *geometryES_p, const EcalRecHitCollection::const_iterator &seedIt, bool seedOutside) |
void | prepareCluster (CaloNavigator< DetId > &navigator, const EcalRecHitCollection *hits, const CaloSubdetectorGeometry *geometry) |
Private Attributes | |
std::set< DetId > | canSeed_s |
std::vector< reco::BasicCluster > | clusters_v |
std::vector< std::pair< DetId, float > > | current_v |
reco::CaloID::Detectors | detector_ |
The ecal region used. More... | |
double | ecalBarrelSeedThreshold |
double | ecalEndcapSeedThreshold |
PositionCalc | posCalculator_ |
std::vector< ProtoBasicCluster > | protoClusters_ |
bool | reassignSeedCrysToClusterItSeeds_ |
const EcalRecHitCollection * | recHits_ |
std::vector< EcalRecHit > | seeds |
std::set< DetId > | used_s |
std::vector< int > | v_chstatus_ |
std::vector< std::pair< DetId, int > > | whichClusCrysBelongsTo_ |
Definition at line 28 of file Multi5x5ClusterAlgo.h.
point in the space
Definition at line 81 of file Multi5x5ClusterAlgo.h.
|
inline |
Definition at line 57 of file Multi5x5ClusterAlgo.h.
|
inline |
Definition at line 60 of file Multi5x5ClusterAlgo.h.
References posCalculator_, python.multivaluedict::sort(), and v_chstatus_.
|
inlinevirtual |
Definition at line 66 of file Multi5x5ClusterAlgo.h.
|
private |
Definition at line 407 of file Multi5x5ClusterAlgo.cc.
References current_v, edm::SortedCollection< T, SORT >::end(), edm::SortedCollection< T, SORT >::find(), recHits_, and used_s.
Referenced by prepareCluster().
|
private |
Definition at line 298 of file Multi5x5ClusterAlgo.cc.
References CaloNavigator< T >::east(), edm::SortedCollection< T, SORT >::end(), spr::find(), edm::SortedCollection< T, SORT >::find(), CaloNavigator< T >::home(), i, CaloNavigator< T >::north(), CaloNavigator< T >::pos(), recHits_, CaloNavigator< T >::south(), v_chstatus_, and CaloNavigator< T >::west().
Referenced by mainSearch().
|
private |
Definition at line 136 of file Multi5x5ClusterAlgo.cc.
References PositionCalc::Calculate_Location(), canSeed_s, checkMaxima(), clusters_v, current_v, detector_, Multi5x5ClusterAlgo::ProtoBasicCluster::energy(), spr::find(), edm::SortedCollection< T, SORT >::find(), Multi5x5ClusterAlgo::ProtoBasicCluster::hits(), EcalRecHit::id(), LogTrace, makeCluster(), reco::CaloCluster::multi5x5, posCalculator_, position, prepareCluster(), protoClusters_, reassignSeedCrysToClusterItSeeds_, query::result, Multi5x5ClusterAlgo::ProtoBasicCluster::seed(), seeds, python.multivaluedict::sort(), used_s, v_chstatus_, and whichClusCrysBelongsTo_.
Referenced by makeClusters().
|
private |
Definition at line 237 of file Multi5x5ClusterAlgo.cc.
References PositionCalc::Calculate_Location(), current_v, reco::CaloID::DET_ECAL_BARREL, reco::CaloID::DET_ECAL_ENDCAP, EcalBarrel, CaloRecHit::energy(), relval_parameters_module::energy, edm::SortedCollection< T, SORT >::find(), LogTrace, posCalculator_, position, protoClusters_, reassignSeedCrysToClusterItSeeds_, used_s, and whichClusCrysBelongsTo_.
Referenced by mainSearch().
std::vector< reco::BasicCluster > Multi5x5ClusterAlgo::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 > & | regions = std::vector<EcalEtaPhiRegion>() |
||
) |
Definition at line 46 of file Multi5x5ClusterAlgo.cc.
References edm::SortedCollection< T, SORT >::begin(), canSeed_s, clusters_v, reco::CaloID::DET_ECAL_BARREL, reco::CaloID::DET_ECAL_ENDCAP, reco::CaloID::DET_NONE, detector_, ecalBarrelSeedThreshold, ecalEndcapSeedThreshold, edm::SortedCollection< T, SORT >::end(), relval_parameters_module::energy, ET, CaloSubdetectorGeometry::getGeometry(), CaloCellGeometry::getPosition(), LogTrace, mainSearch(), position, recHits_, seeds, funct::sin(), python.multivaluedict::sort(), PV3DBase< T, PVType, FrameType >::theta(), dtDQMClient_cfg::threshold, and used_s.
Referenced by Multi5x5ClusterProducer::clusterizeECALPart(), and EgammaHLTMulti5x5ClusterProducer::clusterizeECALPart().
|
private |
Definition at line 348 of file Multi5x5ClusterAlgo.cc.
References abs, addCrystal(), canSeed_s, CaloNavigator< T >::home(), and CaloNavigator< T >::offsetBy().
Referenced by mainSearch().
|
private |
Definition at line 105 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), makeClusters(), and prepareCluster().
|
private |
Definition at line 113 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeClusters().
|
private |
Definition at line 110 of file Multi5x5ClusterAlgo.h.
Referenced by addCrystal(), mainSearch(), and makeCluster().
|
private |
The ecal region used.
Definition at line 89 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeClusters().
|
private |
Definition at line 92 of file Multi5x5ClusterAlgo.h.
Referenced by makeClusters().
|
private |
Definition at line 93 of file Multi5x5ClusterAlgo.h.
Referenced by makeClusters().
|
private |
Definition at line 86 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), makeCluster(), and Multi5x5ClusterAlgo().
|
private |
Definition at line 114 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeCluster().
|
private |
Definition at line 118 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeCluster().
|
private |
Definition at line 96 of file Multi5x5ClusterAlgo.h.
Referenced by addCrystal(), checkMaxima(), and makeClusters().
|
private |
Definition at line 99 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeClusters().
|
private |
Definition at line 104 of file Multi5x5ClusterAlgo.h.
Referenced by addCrystal(), mainSearch(), makeCluster(), and makeClusters().
|
private |
Definition at line 116 of file Multi5x5ClusterAlgo.h.
Referenced by checkMaxima(), mainSearch(), and Multi5x5ClusterAlgo().
|
private |
Definition at line 101 of file Multi5x5ClusterAlgo.h.
Referenced by mainSearch(), and makeCluster().