Public Member Functions | |
HGCalLayerClusterProducer (const edm::ParameterSet &) | |
Constructor with parameter settings - which can be changed in hgcalLayerCluster_cff.py. Constructor will set all variables by input param ps. algoID variables will be set accordingly to the detector type. More... | |
void | produce (edm::Event &, const edm::EventSetup &) override |
Method run the algoritm to get clusters. More... | |
~HGCalLayerClusterProducer () override | |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
EDProducer (const EDProducer &)=delete | |
bool | hasAbilityToProduceInBeginLumis () const final |
bool | hasAbilityToProduceInBeginProcessBlocks () const final |
bool | hasAbilityToProduceInBeginRuns () const final |
bool | hasAbilityToProduceInEndLumis () const final |
bool | hasAbilityToProduceInEndProcessBlocks () const final |
bool | hasAbilityToProduceInEndRuns () const final |
const EDProducer & | operator= (const EDProducer &)=delete |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &descriptions) |
Method fill description which will be used in pyhton file. More... | |
Private Member Functions | |
math::XYZPoint | calculatePosition (std::unordered_map< uint32_t, const HGCRecHit *> &hitmap, const std::vector< std::pair< DetId, float >> &hitsAndFractions) |
Counts position for all points in the cluster. More... | |
std::pair< float, float > | calculateTime (std::unordered_map< uint32_t, const HGCRecHit *> &hitmap, const std::vector< std::pair< DetId, float >> &hitsAndFractions, size_t sizeCluster) |
Counts time for all points in the cluster. More... | |
void | setAlgoId () |
Sets algoId accordingly to the detector type. More... | |
Private Attributes | |
std::unique_ptr< HGCalClusteringAlgoBase > | algo_ |
reco::CaloCluster::AlgoId | algoId_ |
const bool | calculatePositionInAlgo_ |
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > | caloGeomToken_ |
std::string | detector_ |
edm::EDGetTokenT< HGCRecHitCollection > | hits_token_ |
unsigned int | hitsTime_ |
double | positionDeltaRho2_ |
hgcal::RecHitTools | rhtools_ |
std::vector< double > | thresholdW0_ |
std::string | timeClname_ |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
using | CacheTypes = CacheContexts< T... > |
using | GlobalCache = typename CacheTypes::GlobalCache |
using | HasAbility = AbilityChecker< T... > |
using | InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache |
using | LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache |
using | LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache > |
using | LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache |
using | RunCache = typename CacheTypes::RunCache |
using | RunContext = RunContextT< RunCache, GlobalCache > |
using | RunSummaryCache = typename CacheTypes::RunSummaryCache |
Definition at line 41 of file HGCalLayerClusterProducer.cc.
HGCalLayerClusterProducer::HGCalLayerClusterProducer | ( | const edm::ParameterSet & | ps | ) |
Constructor with parameter settings - which can be changed in hgcalLayerCluster_cff.py. Constructor will set all variables by input param ps. algoID variables will be set accordingly to the detector type.
[in] | ps | parametr set to set variables |
Definition at line 115 of file HGCalLayerClusterProducer.cc.
References algo_, algoId_, detector_, get, edm::ParameterSet::getParameter(), hits_token_, positionDeltaRho2_, setAlgoId(), AlCaHLTBitMon_QueryRunRegistry::string, thresholdW0_, and timeClname_.
|
inlineoverride |
Definition at line 51 of file HGCalLayerClusterProducer.cc.
|
private |
Counts position for all points in the cluster.
[in] | hitmap | hitmap to find correct RecHit |
[in] | hitsAndFraction | all hits in the cluster |
Definition at line 160 of file HGCalLayerClusterProducer.cc.
References d1, CaloRecHit::detid(), CaloRecHit::energy(), hgcal::RecHitTools::getPosition(), hgcal::RecHitTools::getSiThickIndex(), dqm-mbProfile::log, SiStripPI::max, position, positionDeltaRho2_, rhtools_, thresholdW0_, x, and y.
Referenced by produce().
|
private |
Counts time for all points in the cluster.
[in] | hitmap | hitmap to find correct RecHit only for silicon (not for BH-HSci) |
[in] | hitsAndFraction | all hits in the cluster |
Definition at line 214 of file HGCalLayerClusterProducer.cc.
References f, hgcalsimclustertime::ComputeClusterTime::fixSizeHighestDensity(), hitsTime_, CaloRecHit::time(), and HGCRecHit::timeError().
Referenced by produce().
|
static |
Method fill description which will be used in pyhton file.
[out] | description | to be fill |
Definition at line 145 of file HGCalLayerClusterProducer.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::addNode(), submitPVResolutionJobs::desc, ProducerED_cfi::InputTag, and AlCaHLTBitMon_QueryRunRegistry::string.
|
override |
Method run the algoritm to get clusters.
[in,out] | evt | from get info and put result |
[in] | es | to get event setup info |
Definition at line 240 of file HGCalLayerClusterProducer.cc.
References algo_, calculatePosition(), calculatePositionInAlgo_, calculateTime(), caloGeomToken_, bsc_activity_cfg::clusters, detector_, hgcalUtils::DumpClusters::dumpInfos(), edm::EventID::event(), edm::Event::eventAuxiliary(), f, trigObjTnPSource_cfi::filler, relativeConstraints::geom, edm::Event::getByToken(), edm::EventSetup::getHandle(), hfClusterShapes_cfi::hits, hits_token_, reco::CaloCluster::hitsAndFractions(), mps_fire::i, edm::EventAuxiliary::id(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, edm::EventAuxiliary::luminosityBlock(), eostools::move(), edm::Event::put(), rhtools_, edm::EventAuxiliary::run(), convertSQLiteXML::runNumber, hgcal::RecHitTools::setGeometry(), reco::CaloCluster::setPosition(), reco::CaloCluster::size(), and timeClname_.
|
private |
Sets algoId accordingly to the detector type.
Definition at line 304 of file HGCalLayerClusterProducer.cc.
References algoId_, detector_, reco::CaloCluster::hfnose, reco::CaloCluster::hgcal_em, reco::CaloCluster::hgcal_had, and reco::CaloCluster::hgcal_scintillator.
Referenced by HGCalLayerClusterProducer().
|
private |
Definition at line 72 of file HGCalLayerClusterProducer.cc.
Referenced by HGCalLayerClusterProducer(), and produce().
|
private |
Definition at line 70 of file HGCalLayerClusterProducer.cc.
Referenced by HGCalLayerClusterProducer(), and setAlgoId().
|
private |
Definition at line 83 of file HGCalLayerClusterProducer.cc.
Referenced by produce().
|
private |
Definition at line 82 of file HGCalLayerClusterProducer.cc.
Referenced by produce().
|
private |
Definition at line 73 of file HGCalLayerClusterProducer.cc.
Referenced by HGCalLayerClusterProducer(), produce(), and setAlgoId().
|
private |
Definition at line 68 of file HGCalLayerClusterProducer.cc.
Referenced by HGCalLayerClusterProducer(), and produce().
|
private |
Definition at line 76 of file HGCalLayerClusterProducer.cc.
Referenced by calculateTime().
|
private |
Definition at line 80 of file HGCalLayerClusterProducer.cc.
Referenced by calculatePosition(), and HGCalLayerClusterProducer().
|
private |
Definition at line 81 of file HGCalLayerClusterProducer.cc.
Referenced by calculatePosition(), and produce().
|
private |
Definition at line 79 of file HGCalLayerClusterProducer.cc.
Referenced by calculatePosition(), and HGCalLayerClusterProducer().
|
private |
Definition at line 75 of file HGCalLayerClusterProducer.cc.
Referenced by HGCalLayerClusterProducer(), and produce().