#include <LowPtGsfElectronSeedProducer.h>
Public Types | |
using | TrackIndxMap = std::unordered_map< reco::TrackRef::key_type, size_t > |
Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< lowptgsfeleseed::HeavyObjectCache > > | |
typedef CacheContexts< T... > | CacheTypes |
typedef CacheTypes::GlobalCache | GlobalCache |
typedef AbilityChecker< T... > | HasAbility |
typedef CacheTypes::LuminosityBlockCache | LuminosityBlockCache |
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache > | LuminosityBlockContext |
typedef CacheTypes::LuminosityBlockSummaryCache | LuminosityBlockSummaryCache |
typedef CacheTypes::RunCache | RunCache |
typedef RunContextT< RunCache, GlobalCache > | RunContext |
typedef CacheTypes::RunSummaryCache | RunSummaryCache |
Public Member Functions | |
void | beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override |
LowPtGsfElectronSeedProducer (const edm::ParameterSet &, const lowptgsfeleseed::HeavyObjectCache *) | |
void | produce (edm::Event &, const edm::EventSetup &) override |
~LowPtGsfElectronSeedProducer () override | |
Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< lowptgsfeleseed::HeavyObjectCache > > | |
EDProducer ()=default | |
bool | hasAbilityToProduceInLumis () const final |
bool | hasAbilityToProduceInRuns () const final |
Static Public Member Functions | |
static void | fillDescriptions (edm::ConfigurationDescriptions &) |
static void | globalEndJob (lowptgsfeleseed::HeavyObjectCache const *) |
static std::unique_ptr< lowptgsfeleseed::HeavyObjectCache > | initializeGlobalCache (const edm::ParameterSet &conf) |
Private Member Functions | |
bool | decision (const reco::PFRecTrackRef &pfTrackRef, reco::PreId &ecal, reco::PreId &hcal, double rho, const reco::BeamSpot &spot, noZS::EcalClusterLazyTools &ecalTools) |
bool | decision (const reco::TrackRef &kfTrackRef, reco::PreId &ecal, reco::PreId &hcal, double rho, const reco::BeamSpot &spot, noZS::EcalClusterLazyTools &ecalTools) |
template<typename CollType > | |
void | fillPreIdRefValueMap (edm::Handle< CollType > tracksHandle, const TrackIndxMap &trksToPreIdIndx, const edm::OrphanHandle< reco::PreIdCollection > &preIdHandle, edm::ValueMap< reco::PreIdRef >::Filler &filler) |
reco::TrackRef | getBaseRef (edm::Handle< std::vector< reco::Track > > handle, int idx) const |
reco::TrackRef | getBaseRef (edm::Handle< std::vector< reco::PFRecTrack > > handle, int idx) const |
bool | lightGsfTracking (reco::PreId &, const reco::TrackRef &, const reco::ElectronSeed &, const edm::EventSetup &) |
template<typename T > | |
void | loop (const edm::Handle< std::vector< T > > &handle, edm::Handle< reco::PFClusterCollection > &hcalClusters, reco::ElectronSeedCollection &seeds, reco::PreIdCollection &ecalPreIds, reco::PreIdCollection &hcalPreIds, TrackIndxMap &trksToPreIdIndx, edm::Event &, const edm::EventSetup &) |
void | propagateTrackToCalo (const reco::PFRecTrackRef &pfTrackRef, const edm::Handle< reco::PFClusterCollection > &ecalClusters, const edm::Handle< reco::PFClusterCollection > &hcalClusters, std::vector< int > &matchedEcalClusters, std::vector< int > &matchedHcalClusters, reco::PreId &ecalPreId, reco::PreId &hcalPreId) |
void | propagateTrackToCalo (const reco::PFRecTrackRef &pfTrackRef, const edm::Handle< reco::PFClusterCollection > &clusters, std::vector< int > &matchedClusters, reco::PreId &preId, bool ecal) |
void | propagateTrackToCalo (const reco::TrackRef &pfTrack, const edm::Handle< reco::PFClusterCollection > &ecalClusters, const edm::Handle< reco::PFClusterCollection > &hcalClusters, std::vector< int > &matchedEcalClusters, std::vector< int > &matchedHcalClusters, reco::PreId &ecalPreId, reco::PreId &hcalPreId) |
Private Attributes | |
const edm::EDGetTokenT< reco::BeamSpot > | beamSpot_ |
const std::string | builder_ |
const edm::EDGetTokenT< EcalRecHitCollection > | ebRecHits_ |
const edm::EDGetTokenT< reco::PFClusterCollection > | ecalClusters_ |
const edm::EDGetTokenT< EcalRecHitCollection > | eeRecHits_ |
edm::ESHandle< MagneticField > | field_ |
const std::string | fitter_ |
std::unique_ptr< TrajectoryFitter > | fitterPtr_ |
edm::EDGetTokenT< reco::PFClusterCollection > | hcalClusters_ |
edm::EDGetTokenT< reco::TrackCollection > | kfTracks_ |
const double | maxPtThreshold_ |
const double | minPtThreshold_ |
const bool | passThrough_ |
edm::EDGetTokenT< reco::PFRecTrackCollection > | pfTracks_ |
const edm::EDGetTokenT< double > | rho_ |
const std::string | smoother_ |
std::unique_ptr< TrajectorySmoother > | smootherPtr_ |
const bool | usePfTracks_ |
Static Private Attributes | |
static double | boundary_ = 2.50746495928*2.50746495928 |
static double | mass_ = 0.000511*0.000511 |
Description: EDProducer of ElectronSeed objects Implementation: <Notes on="" implementation>="">
Definition at line 27 of file LowPtGsfElectronSeedProducer.h.
using LowPtGsfElectronSeedProducer::TrackIndxMap = std::unordered_map<reco::TrackRef::key_type,size_t> |
Definition at line 31 of file LowPtGsfElectronSeedProducer.h.
|
explicit |
Definition at line 38 of file LowPtGsfElectronSeedProducer.cc.
References beamSpot_, builder_, ebRecHits_, eeRecHits_, fitter_, edm::ParameterSet::getParameter(), hcalClusters_, kfTracks_, maxPtThreshold_, minPtThreshold_, passThrough_, pfTracks_, rho_, smoother_, AlCaHLTBitMon_QueryRunRegistry::string, and usePfTracks_.
|
override |
Definition at line 73 of file LowPtGsfElectronSeedProducer.cc.
|
override |
Definition at line 77 of file LowPtGsfElectronSeedProducer.cc.
References field_, and edm::EventSetup::get().
Referenced by globalEndJob().
|
private |
Definition at line 517 of file LowPtGsfElectronSeedProducer.cc.
References maxPtThreshold_, dataset::name, passThrough_, and mps_fire::result.
Referenced by globalEndJob(), and loop().
|
private |
Definition at line 538 of file LowPtGsfElectronSeedProducer.cc.
References passThrough_.
|
static |
Definition at line 573 of file LowPtGsfElectronSeedProducer.cc.
References edm::ConfigurationDescriptions::add(), edm::ParameterSetDescription::add(), DEFINE_FWK_MODULE, and AlCaHLTBitMon_QueryRunRegistry::string.
Referenced by globalEndJob().
|
private |
Definition at line 550 of file LowPtGsfElectronSeedProducer.cc.
References edm::Ref< C, T, F >::index(), edm::helper::Filler< Map >::insert(), vertices_cff::ntracks, and MuonErrorMatrixValues_cff::values.
Referenced by globalEndJob(), and produce().
|
private |
Definition at line 158 of file LowPtGsfElectronSeedProducer.cc.
References cmsBatch::handle.
Referenced by globalEndJob(), and loop().
|
private |
Definition at line 163 of file LowPtGsfElectronSeedProducer.cc.
References cmsBatch::handle.
|
inlinestatic |
Definition at line 42 of file LowPtGsfElectronSeedProducer.h.
References beginLuminosityBlock(), fastPrimaryVertexProducer_cfi::clusters, decision(), digitizers_cfi::ecal, RecoEcal_cff::ecalClusters, fillDescriptions(), objects.autophobj::filler, fillPreIdRefValueMap(), getBaseRef(), cmsBatch::handle, lowPtGsfElectronSeeds_cfi::hcalClusters, training_settings::idx, lightGsfTracking(), loop(), pfTrack_cfi::pfTrack, produce(), propagateTrackToCalo(), and rho.
|
inlinestatic |
Definition at line 38 of file LowPtGsfElectronSeedProducer.h.
|
private |
Definition at line 470 of file LowPtGsfElectronSeedProducer.cc.
References Trajectory::chiSquared(), field_, Trajectory::firstMeasurement(), fitterPtr_, TrajectoryStateOnSurface::globalMomentum(), runTauDisplay::gp, hfClusterShapes_cfi::hits, Trajectory::isValid(), Trajectory::lastMeasurement(), PV3DBase< T, PVType, FrameType >::perp(), reco::PreId::setTrackProperties(), smootherPtr_, and TrajectoryMeasurement::updatedState().
Referenced by globalEndJob(), and loop().
|
private |
Definition at line 171 of file LowPtGsfElectronSeedProducer.cc.
References beamSpot_, builder_, TrajectorySmoother::clone(), TrajectoryFitter::clone(), decision(), ebRecHits_, RecoEcal_cff::ecalClusters, ecalClusters_, eeRecHits_, fitter_, fitterPtr_, edm::EventSetup::get(), getBaseRef(), cmsBatch::handle, lowPtGsfElectronSeeds_cfi::hcalClusters, edm::Ref< C, T, F >::index(), lightGsfTracking(), minPtThreshold_, passThrough_, edm::ESHandle< T >::product(), propagateTrackToCalo(), reco::TrackBase::qualityByName(), mps_fire::result, rho, rho_, SurveyInfoScenario_cff::seed, reco::ElectronSeed::setCtfTrack(), reco::PreId::setTrack(), smoother_, and smootherPtr_.
Referenced by globalEndJob(), and produce().
|
override |
Definition at line 85 of file LowPtGsfElectronSeedProducer.cc.
References Exception, fillPreIdRefValueMap(), lowPtGsfElectronSeeds_cfi::hcalClusters, hcalClusters_, edm::HandleBase::id(), kfTracks_, loop(), eostools::move(), lowPtGsfElectronSeeds_cfi::pfTracks, pfTracks_, and usePfTracks_.
Referenced by globalEndJob().
|
private |
Definition at line 300 of file LowPtGsfElectronSeedProducer.cc.
Referenced by globalEndJob(), and loop().
|
private |
Definition at line 314 of file LowPtGsfElectronSeedProducer.cc.
References reco::deltaPhi(), reco::deltaR2(), spr::find(), info(), reco::PFTrajectoryPoint::isValid(), point, reco::PFTrajectoryPoint::position(), reco::PFTrajectoryPoint::positionREP(), edm::Handle< T >::product(), reco::PreId::setECALMatchingProperties(), and mathSSE::sqrt().
|
private |
Definition at line 380 of file LowPtGsfElectronSeedProducer.cc.
References funct::abs(), boundary_, reco::deltaPhi(), reco::deltaR2(), field_, reco::PFCluster::getDepthCorrection(), info(), MagneticField::inTesla(), mass_, point, funct::pow(), edm::Handle< T >::product(), BaseParticlePropagator::propagateToEcalEntrance(), reco::PreId::setECALMatchingProperties(), mathSSE::sqrt(), csvLumiCalc::unit, and RawParticle::z().
|
private |
Definition at line 130 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
staticprivate |
Definition at line 140 of file LowPtGsfElectronSeedProducer.h.
Referenced by propagateTrackToCalo().
|
private |
Definition at line 133 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 127 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 125 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop().
|
private |
Definition at line 128 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 120 of file LowPtGsfElectronSeedProducer.h.
Referenced by beginLuminosityBlock(), lightGsfTracking(), and propagateTrackToCalo().
|
private |
Definition at line 131 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 121 of file LowPtGsfElectronSeedProducer.h.
Referenced by lightGsfTracking(), and loop().
|
private |
Definition at line 126 of file LowPtGsfElectronSeedProducer.h.
Referenced by LowPtGsfElectronSeedProducer(), and produce().
|
private |
Definition at line 123 of file LowPtGsfElectronSeedProducer.h.
Referenced by LowPtGsfElectronSeedProducer(), and produce().
|
staticprivate |
Definition at line 142 of file LowPtGsfElectronSeedProducer.h.
Referenced by propagateTrackToCalo().
|
private |
Definition at line 137 of file LowPtGsfElectronSeedProducer.h.
Referenced by decision(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 136 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 134 of file LowPtGsfElectronSeedProducer.h.
Referenced by decision(), loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 124 of file LowPtGsfElectronSeedProducer.h.
Referenced by LowPtGsfElectronSeedProducer(), and produce().
|
private |
Definition at line 129 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 132 of file LowPtGsfElectronSeedProducer.h.
Referenced by loop(), and LowPtGsfElectronSeedProducer().
|
private |
Definition at line 122 of file LowPtGsfElectronSeedProducer.h.
Referenced by lightGsfTracking(), and loop().
|
private |
Definition at line 135 of file LowPtGsfElectronSeedProducer.h.
Referenced by LowPtGsfElectronSeedProducer(), and produce().