Producer for particle flow reconstructed particles (PFCandidates) More...
#include <PFEGammaProducer.h>
Public Member Functions | |
virtual void | beginRun (const edm::Run &, const edm::EventSetup &) override |
PFEGammaProducer (const edm::ParameterSet &, const pfEGHelpers::HeavyObjectCache *) | |
virtual void | produce (edm::Event &, const edm::EventSetup &) override |
~PFEGammaProducer () | |
Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< pfEGHelpers::HeavyObjectCache > > | |
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) |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
Static Public Member Functions | |
static void | globalEndJob (pfEGHelpers::HeavyObjectCache const *) |
static std::unique_ptr < pfEGHelpers::HeavyObjectCache > | initializeGlobalCache (const edm::ParameterSet &conf) |
Static Public Member Functions inherited from edm::stream::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Private Member Functions | |
void | createSingleLegConversions (reco::PFCandidateEGammaExtraCollection &extras, reco::ConversionCollection &oneLegConversions, const edm::RefProd< reco::ConversionCollection > &convProd) |
void | setPFEGParameters (PFEGammaAlgo::PFEGConfigInfo &) |
void | setPFVertexParameters (bool useVertex, const reco::VertexCollection *primaryVertices) |
Additional Inherited Members | |
Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< pfEGHelpers::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 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 |
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) |
Producer for particle flow reconstructed particles (PFCandidates)
This producer makes use of PFAlgo, the particle flow algorithm.
Definition at line 51 of file PFEGammaProducer.h.
|
explicit |
Definition at line 50 of file PFEGammaProducer.cc.
References HLT_FULL_cff::algoType, PFEGammaAlgo::PFEGConfigInfo::applyCrackCorrections, assert(), HLT_FULL_cff::calibPFSCEle_barrel, HLT_FULL_cff::calibPFSCEle_endcap, HLT_FULL_cff::calibPFSCEle_Fbrem_barrel, HLT_FULL_cff::calibPFSCEle_Fbrem_endcap, PFEGammaAlgo::PFEGConfigInfo::coneEcalIsoForEgammaSC, PFEGammaAlgo::PFEGConfigInfo::coneTrackIsoForEgammaSC, ebeeClustersCollection_, eetopsSrc_, esClustersCollection_, contentValuesFiles::fullPath, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), HLT_FULL_cff::iCfgCandConnector, inputTagBlocks_, LogDebug, PFEGammaAlgo::PFEGConfigInfo::mvaConvCut, PFEGammaAlgo::PFEGConfigInfo::mvaEleCut, PFEGammaAlgo::PFEGConfigInfo::mvaweightfile, PFEGammaAlgo::PFEGConfigInfo::nTrackIsoForEgammaSC, PFEGammaAlgo::PFEGConfigInfo::produceEGCandsWithNoSuperCluster, ReaderGC_, ReaderLC_, ReaderRes_, setPFEGParameters(), AlCaHLTBitMon_QueryRunRegistry::string, PFEGammaAlgo::PFEGConfigInfo::sumEtEcalIsoForEgammaSC_barrel, PFEGammaAlgo::PFEGConfigInfo::sumEtEcalIsoForEgammaSC_endcap, PFEGammaAlgo::PFEGConfigInfo::sumPtTrackIsoForEgammaSC_barrel, PFEGammaAlgo::PFEGConfigInfo::sumPtTrackIsoForEgammaSC_endcap, PFEGammaAlgo::PFEGConfigInfo::sumPtTrackIsoForPhoton, PFEGammaAlgo::PFEGConfigInfo::sumPtTrackIsoSlopeForPhoton, PFEGammaAlgo::PFEGConfigInfo::thePFEnergyCalibration, PFEGammaAlgo::PFEGConfigInfo::thePFSCEnergyCalibration, useCalibrationsFromDB_, PFEGammaAlgo::PFEGConfigInfo::useEGammaSupercluster, PFEGammaAlgo::PFEGConfigInfo::usePFSCEleCalib, PFEGammaAlgo::PFEGConfigInfo::useReg, useRegressionFromDB_, useVerticesForNeutral_, verbose_, vertices_, and PFEGammaAlgo::PFEGConfigInfo::X0_Map.
PFEGammaProducer::~PFEGammaProducer | ( | ) |
Definition at line 200 of file PFEGammaProducer.cc.
|
overridevirtual |
|
private |
Definition at line 589 of file PFEGammaProducer.cc.
References reco::TrackBase::d0(), relativeConstraints::error, reco::Track::innerMomentum(), reco::Track::innerPosition(), reco::Track::outerMomentum(), reco::Track::outerPosition(), reco::Conversion::pflow, edm::PtrVector< T >::push_back(), edm::refToPtr(), and reco::Conversion::setOneLegMVA().
Referenced by produce().
|
inlinestatic |
Definition at line 61 of file PFEGammaProducer.h.
|
inlinestatic |
Definition at line 57 of file PFEGammaProducer.h.
|
overridevirtual |
Implements edm::stream::EDProducerBase.
Definition at line 241 of file PFEGammaProducer.cc.
References assert(), gather_cfg::blocks, HLT_FULL_cff::clusters, createSingleLegConversions(), TauDecayModes::dec, ebeeClustersCollection_, reco::PFBlockElement::ECAL, eetopsSrc_, egCandidates_, egExtra_, bookConverter::elements, esClustersCollection_, edm::EventID::event(), Exception, newFWLiteAna::found, edm::EventSetup::get(), edm::Event::getByToken(), edm::Event::getRefBeforePut(), reco::PFBlockElement::HCAL, reco::PFBlockElement::HFEM, reco::PFBlockElement::HFHAD, reco::PFBlockElement::HO, i, edm::EventBase::id(), edm::EDGetTokenT< T >::index(), inputTagBlocks_, LOGDRESSED, eostools::move(), pfeg_, edm::Handle< T >::product(), edm::ESHandle< class >::product(), reco::PFBlockElement::PS1, reco::PFBlockElement::PS2, edm::PtrVector< T >::push_back(), edm::Event::put(), edm::EventID::run(), reco::PFBlockElement::SC, sClusters_, reco::PFCandidate::setPFEGammaExtraRef(), setPFVertexParameters(), reco::PFCandidateEGammaExtra::setSuperClusterRef(), reco::PFCandidate::setSuperClusterRef(), singleLegConv_, edm::OwnVector< T, P >::size(), funct::true, useVerticesForNeutral_, HLT_FULL_cff::vertices, and vertices_.
|
private |
Definition at line 509 of file PFEGammaProducer.cc.
References alignCSCRings::e, PFEGammaAlgo::PFEGConfigInfo::mvaweightfile, PFEGammaAlgo::PFEGConfigInfo::mvaWeightFileEleID, AlCaHLTBitMon_ParallelJobs::p, pfeg_, primaryVertex_, PFEGammaAlgo::PFEGConfigInfo::primaryVtx, AlCaHLTBitMon_QueryRunRegistry::string, and useVerticesForNeutral_.
Referenced by PFEGammaProducer().
|
private |
Definition at line 559 of file PFEGammaProducer.cc.
References i, pfeg_, primaryVertex_, HLT_FULL_cff::useVertex, and useVerticesForNeutral_.
Referenced by produce().
|
private |
Definition at line 115 of file PFEGammaProducer.h.
|
private |
Definition at line 121 of file PFEGammaProducer.h.
|
private |
Definition at line 124 of file PFEGammaProducer.h.
|
private |
Definition at line 143 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), and produce().
|
private |
Definition at line 78 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), and produce().
|
private |
Definition at line 129 of file PFEGammaProducer.h.
Referenced by produce().
|
private |
Definition at line 130 of file PFEGammaProducer.h.
Referenced by produce().
|
private |
Definition at line 144 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), and produce().
|
private |
Definition at line 77 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), and produce().
|
private |
Definition at line 112 of file PFEGammaProducer.h.
|
private |
Variables for PFEGamma.
Definition at line 110 of file PFEGammaProducer.h.
|
private |
Definition at line 125 of file PFEGammaProducer.h.
|
private |
the unfiltered electron collection
particle flow algorithm
Definition at line 141 of file PFEGammaProducer.h.
Referenced by produce(), setPFEGParameters(), and setPFVertexParameters().
|
private |
Definition at line 127 of file PFEGammaProducer.h.
Referenced by setPFEGParameters(), and setPFVertexParameters().
|
private |
Definition at line 89 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer().
|
private |
Definition at line 90 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer().
|
private |
Definition at line 91 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer().
|
private |
Definition at line 132 of file PFEGammaProducer.h.
Referenced by produce().
|
private |
Definition at line 111 of file PFEGammaProducer.h.
|
private |
Definition at line 131 of file PFEGammaProducer.h.
Referenced by produce().
|
private |
Definition at line 119 of file PFEGammaProducer.h.
|
private |
Definition at line 120 of file PFEGammaProducer.h.
|
private |
Definition at line 122 of file PFEGammaProducer.h.
|
private |
Definition at line 123 of file PFEGammaProducer.h.
|
private |
Definition at line 107 of file PFEGammaProducer.h.
|
private |
Definition at line 105 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer().
|
private |
Definition at line 99 of file PFEGammaProducer.h.
|
private |
Definition at line 118 of file PFEGammaProducer.h.
|
private |
Definition at line 117 of file PFEGammaProducer.h.
|
private |
Definition at line 113 of file PFEGammaProducer.h.
|
private |
Definition at line 114 of file PFEGammaProducer.h.
|
private |
Definition at line 116 of file PFEGammaProducer.h.
|
private |
Definition at line 87 of file PFEGammaProducer.h.
|
private |
Definition at line 88 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer().
|
private |
Definition at line 102 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), produce(), setPFEGParameters(), and setPFVertexParameters().
|
private |
|
private |
Definition at line 79 of file PFEGammaProducer.h.
Referenced by PFEGammaProducer(), and produce().