#include <ConversionProducer.h>
Public Member Functions | |
ConversionProducer (const edm::ParameterSet &) | |
~ConversionProducer () | |
Public Member Functions inherited from edm::stream::EDProducer<> | |
EDProducer ()=default | |
Public Member Functions inherited from edm::stream::EDProducerBase | |
EDProducerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducerBase () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
void | resolvePutIndicies (BranchType iBranchType, std::unordered_multimap< std::string, edm::ProductResolverIndex > const &iIndicies, std::string const &moduleLabel) |
virtual | ~ProducerBase () noexcept(false) |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Private Types | |
typedef math::XYZPointF | Point |
typedef std::vector< Point > | PointCollection |
Private Member Functions | |
void | buildCollection (edm::Event &iEvent, const edm::EventSetup &iSetup, const std::multimap< float, edm::Ptr< reco::ConversionTrack > > &allTracks, const std::multimap< double, reco::CaloClusterPtr > &superClusterPtrs, const std::multimap< double, reco::CaloClusterPtr > &basicClusterPtrs, const reco::Vertex &the_pvtx, reco::ConversionCollection &outputConvPhotonCollection) |
void | buildSuperAndBasicClusterGeoMap (const edm::Event &, std::multimap< double, reco::CaloClusterPtr > &basicClusterPtrs, std::multimap< double, reco::CaloClusterPtr > &superClusterPtrs) |
bool | checkPhi (const edm::RefToBase< reco::Track > &tk_l, const edm::RefToBase< reco::Track > &tk_r, const TrackerGeometry *trackerGeom, const MagneticField *magField, const reco::Vertex &the_vertex) |
bool | checkTrackPair (const std::pair< edm::RefToBase< reco::Track >, reco::CaloClusterPtr > &ll, const std::pair< edm::RefToBase< reco::Track >, reco::CaloClusterPtr > &rr) |
bool | checkVertex (const reco::TransientTrack &ttk_l, const reco::TransientTrack &ttk_r, const MagneticField *magField, reco::Vertex &the_vertex) |
double | etaTransformation (float EtaParticle, float Zvertex) |
bool | getMatchedBC (const std::multimap< double, reco::CaloClusterPtr > &bcMap, const math::XYZPointF &trackImpactPosition, reco::CaloClusterPtr &closestBC) |
bool | getTrackImpactPosition (const reco::Track *tk_ref, const TrackerGeometry *trackerGeom, const MagneticField *magField, math::XYZPointF &ew) |
bool | matchingSC (const std::multimap< double, reco::CaloClusterPtr > &scMap, reco::Conversion &conv, reco::CaloClusterPtrVector &mSC) |
bool | preselectTrackPair (const reco::TransientTrack &ttk_l, const reco::TransientTrack &ttk_r, double &appDist) |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
math::XYZPointF | toFConverterP (const math::XYZPoint &val) |
math::XYZVectorF | toFConverterV (const math::XYZVector &val) |
bool | trackD0Cut (const edm::RefToBase< reco::Track > &ref) |
bool | trackD0Cut (const edm::RefToBase< reco::Track > &ref, const reco::Vertex &the_pvtx) |
bool | trackQualityFilter (const edm::RefToBase< reco::Track > &ref, bool isLeft) |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer<> | |
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 Types inherited from edm::stream::EDProducerBase | |
typedef EDProducerAdaptorBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::stream::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
$Id:
Description: Produces converted photon objects using default track collections
Implementation: <Notes on="" implementation>="">
Definition at line 66 of file ConversionProducer.h.
|
private |
Definition at line 86 of file ConversionProducer.h.
|
private |
Definition at line 87 of file ConversionProducer.h.
|
explicit |
Definition at line 73 of file ConversionProducer.cc.
References algoName_, allowD0_, allowDeltaCot_, allowDeltaPhi_, allowMinApproach_, allowOppCharge_, allowSingleLeg_, allowTrackBC_, allowVertex_, bcBarrelCollection_, bcEndcapCollection_, bypassPreselEcal_, bypassPreselEcalEcal_, bypassPreselGsf_, ConvertedPhotonCollection_, d0Cut_, deltaCotTheta_, deltaEta_, deltaPhi_, dEtacutForSCmatching_, dEtaTkBC_, dPhicutForSCmatching_, dPhiTkBC_, dzCut_, energyBC_, energyTotalBC_, edm::ParameterSet::getParameter(), halfWayEta_, maxChi2Left_, maxChi2Right_, maxNumOfTrackInPU_, maxTrackRho_, maxTrackZ_, minApproachHigh_, minApproachLow_, minHitsLeft_, minHitsRight_, minSCEt_, r_cut, rightBC_, scBarrelProducer_, scEndcapProducer_, src_, AlCaHLTBitMon_QueryRunRegistry::string, thettbuilder_, theVertexFinder_, usePvtx_, vertexProducer_, and vtxChi2_.
ConversionProducer::~ConversionProducer | ( | ) |
Definition at line 172 of file ConversionProducer.cc.
References theVertexFinder_.
|
private |
match the track pair with a SC. If at least one track matches, store the SC
Definition at line 313 of file ConversionProducer.cc.
References patPFMETCorrections_cff::algo, reco::TrackBase::algo(), reco::Conversion::algoByName(), algoName_, allowOppCharge_, allowTrackBC_, allTracks_cfi::allTracks, reco::Conversion::arbitratedEcalSeeded, tkConvValidator_cfi::arbitratedEcalSeeded, reco::Conversion::arbitratedMerged, tkConvValidator_cfi::arbitratedMerged, reco::Conversion::arbitratedMergedEcalGeneral, TransientTrackBuilder::build(), bypassPreselEcal_, bypassPreselEcalEcal_, bypassPreselGsf_, edm::RefToBase< T >::castTo(), reco::TrackBase::charge(), checkPhi(), checkVertex(), reco::Vertex::chi2(), ChiSquaredProbability(), deltaEta_, energyTotalBC_, reco::Track::extra(), reco::Conversion::generalTracksOnly, tkConvValidator_cfi::generalTracksOnly, edm::EventSetup::get(), edm::RefToBase< T >::get(), getMatchedBC(), getTrackImpactPosition(), reco::TrackBase::gsf, reco::Conversion::highPurity, reco::Track::innerMomentum(), reco::Track::innerPosition(), reco::TrackBase::inOutEcalSeededConv, edm::Ref< C, T, F >::isNonnull(), reco::Vertex::isValid(), matchingSC(), reco::Vertex::ndof(), ConversionHitChecker::nHitsBeforeVtx(), ConversionHitChecker::nSharedHits(), reco::Track::outerMomentum(), reco::TrackBase::outInEcalSeededConv, preselectTrackPair(), edm::ESHandle< T >::product(), findQualityFiles::rr, reco::Conversion::setMatchingSuperCluster(), reco::Conversion::setQuality(), thettbuilder_, toFConverterP(), toFConverterV(), trackD0Cut(), trackQualityFilter(), and vtxChi2_.
Referenced by produce().
|
private |
Definition at line 249 of file ConversionProducer.cc.
References bcBarrelCollection_, bcEndcapCollection_, energyBC_, edm::Event::getByToken(), cuy::ii, edm::HandleBase::isValid(), findQualityFiles::jj, minSCEt_, scBarrelProducer_, and scEndcapProducer_.
Referenced by produce().
|
private |
Definition at line 743 of file ConversionProducer.cc.
References allowDeltaPhi_, anyDirection, reco::deltaPhi(), deltaPhi_, reco::Track::extra(), TrajectoryStateOnSurface::globalDirection(), reco::Track::innerMomentum(), trajectoryStateTransform::innerStateOnSurface(), edm::Ref< C, T, F >::isNonnull(), TrajectoryStateOnSurface::isValid(), reco::Vertex::isValid(), PV3DBase< T, PVType, FrameType >::phi(), reco::Vertex::position(), Propagator::propagate(), and makeMuonMisalignmentScenario::rot.
Referenced by buildCollection().
|
private |
Definition at line 850 of file ConversionProducer.cc.
References allowTrackBC_, energyTotalBC_, edm::Ptr< T >::isNonnull(), rightBC_, and findQualityFiles::rr.
|
private |
Definition at line 874 of file ConversionProducer.cc.
References runEdmFileComparison::found, ConversionVertexFinder::run(), and theVertexFinder_.
Referenced by buildCollection().
|
private |
Definition at line 892 of file ConversionProducer.cc.
References ETA, etaBarrelEndcap, cmsBatch::log, PI, R_ECAL, funct::tan(), and Z_Endcap.
Referenced by matchingSC().
|
private |
Definition at line 707 of file ConversionProducer.cc.
References caloCompatibility_cff::delta_eta, caloCompatibility_cff::delta_phi, reco::deltaPhi(), dEtaTkBC_, dPhiTkBC_, halfWayEta_, and hiMultiTrackSelector_cfi::min_eta.
Referenced by buildCollection().
|
private |
Definition at line 630 of file ConversionProducer.cc.
References alongMomentum, barrelHalfLength(), barrelRadius(), endcapRadius(), endcapZ(), geometryDiff::epsilon, PV3DBase< T, PVType, FrameType >::eta(), f, TrajectoryStateOnSurface::globalPosition(), TrajectoryStateOnSurface::isValid(), trajectoryStateTransform::outerStateOnSurface(), Propagator::propagate(), makeMuonMisalignmentScenario::rot, and PV3DBase< T, PVType, FrameType >::z().
Referenced by buildCollection().
|
private |
Definition at line 678 of file ConversionProducer.cc.
References caloCompatibility_cff::delta_eta, caloCompatibility_cff::delta_phi, reco::deltaPhi(), dEtacutForSCmatching_, dPhicutForSCmatching_, etaTransformation(), match(), edm::PtrVector< T >::push_back(), reco::Conversion::refittedPairMomentum(), SimDataFormats::CaloAnalysis::sc, and reco::Conversion::zOfPrimaryVertexFromTracks().
Referenced by buildCollection().
|
private |
Definition at line 790 of file ConversionProducer.cc.
References funct::abs(), allowDeltaCot_, allowMinApproach_, TangentApproachInRPhi::calculate(), ClosestApproachInRPhi::calculate(), TangentApproachInRPhi::crossingPoint(), ClosestApproachInRPhi::crossingPoint(), deltaCotTheta_, dzCut_, reco::Track::innerMomentum(), reco::TransientTrack::innermostMeasurementState(), maxTrackRho_, maxTrackZ_, minApproachHigh_, PV3DBase< T, PVType, FrameType >::perp(), TangentApproachInRPhi::perpdist(), r_cut, rho, TangentApproachInRPhi::status(), ClosestApproachInRPhi::status(), funct::tan(), reco::TransientTrack::track(), TangentApproachInRPhi::trajectoryParameters(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by buildCollection().
|
privatevirtual |
Definition at line 183 of file ConversionProducer.cc.
References edm::PtrVector< T >::begin(), buildCollection(), buildSuperAndBasicClusterGeoMap(), ConvertedPhotonCollection_, edm::PtrVector< T >::end(), edm::EventSetup::get(), edm::Event::getByToken(), mps_fire::i, edm::HandleBase::isValid(), maxNumOfTrackInPU_, eostools::move(), edm::Handle< T >::product(), edm::ESHandle< T >::product(), edm::PtrVector< T >::push_back(), edm::Event::put(), src_, thettbuilder_, usePvtx_, particleFlowSuperClusterECAL_cfi::vertexCollection, and vertexProducer_.
|
inlineprivate |
Definition at line 187 of file ConversionProducer.h.
Referenced by buildCollection().
|
inlineprivate |
Definition at line 191 of file ConversionProducer.h.
Referenced by buildCollection().
|
inlineprivate |
Definition at line 619 of file ConversionProducer.cc.
References allowD0_, reco::TrackBase::charge(), reco::TrackBase::d0(), d0Cut_, and reco::TrackBase::d0Error().
Referenced by buildCollection().
|
inlineprivate |
Definition at line 624 of file ConversionProducer.cc.
References allowD0_, reco::TrackBase::charge(), d0Cut_, reco::TrackBase::dxy(), reco::TrackBase::dxyError(), and reco::Vertex::position().
|
inlineprivate |
Definition at line 608 of file ConversionProducer.cc.
References reco::Track::found(), maxChi2Left_, maxChi2Right_, minHitsLeft_, minHitsRight_, and reco::TrackBase::normalizedChi2().
Referenced by buildCollection().
|
private |
Definition at line 84 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackD0Cut().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by checkPhi(), and ConversionProducer().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 131 of file ConversionProducer.h.
Referenced by ConversionProducer().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by buildCollection(), checkTrackPair(), and ConversionProducer().
|
private |
Definition at line 97 of file ConversionProducer.h.
Referenced by ConversionProducer().
|
private |
Definition at line 93 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 94 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 99 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 99 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 99 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 95 of file ConversionProducer.h.
Referenced by ConversionProducer(), and produce().
|
private |
Definition at line 118 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackD0Cut().
|
private |
Definition at line 125 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 107 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().
|
private |
Definition at line 125 of file ConversionProducer.h.
Referenced by checkPhi(), and ConversionProducer().
|
private |
Definition at line 114 of file ConversionProducer.h.
Referenced by ConversionProducer(), and matchingSC().
|
private |
Definition at line 120 of file ConversionProducer.h.
Referenced by ConversionProducer(), and getMatchedBC().
|
private |
Definition at line 115 of file ConversionProducer.h.
Referenced by ConversionProducer(), and matchingSC().
|
private |
Definition at line 120 of file ConversionProducer.h.
Referenced by ConversionProducer(), and getMatchedBC().
|
private |
Definition at line 119 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 116 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 117 of file ConversionProducer.h.
Referenced by buildCollection(), checkTrackPair(), and ConversionProducer().
|
private |
Definition at line 109 of file ConversionProducer.h.
Referenced by ConversionProducer(), and getMatchedBC().
|
private |
Definition at line 109 of file ConversionProducer.h.
|
private |
Definition at line 122 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackQualityFilter().
|
private |
Definition at line 122 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackQualityFilter().
|
private |
Definition at line 110 of file ConversionProducer.h.
Referenced by ConversionProducer(), and produce().
|
private |
Definition at line 112 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 111 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 125 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 125 of file ConversionProducer.h.
Referenced by ConversionProducer().
|
private |
Definition at line 123 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackQualityFilter().
|
private |
Definition at line 123 of file ConversionProducer.h.
Referenced by ConversionProducer(), and trackQualityFilter().
|
private |
Definition at line 113 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 128 of file ConversionProducer.h.
Referenced by ConversionProducer(), and preselectTrackPair().
|
private |
Definition at line 132 of file ConversionProducer.h.
Referenced by checkTrackPair(), and ConversionProducer().
|
private |
Definition at line 91 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 92 of file ConversionProducer.h.
Referenced by buildSuperAndBasicClusterGeoMap(), and ConversionProducer().
|
private |
Definition at line 89 of file ConversionProducer.h.
Referenced by ConversionProducer(), and produce().
|
private |
Definition at line 105 of file ConversionProducer.h.
Referenced by buildCollection(), ConversionProducer(), and produce().
|
private |
Definition at line 103 of file ConversionProducer.h.
Referenced by checkVertex(), ConversionProducer(), and ~ConversionProducer().
|
private |
Definition at line 101 of file ConversionProducer.h.
Referenced by ConversionProducer(), and produce().
|
private |
Definition at line 102 of file ConversionProducer.h.
Referenced by ConversionProducer(), and produce().
|
private |
Definition at line 129 of file ConversionProducer.h.
Referenced by buildCollection(), and ConversionProducer().