16 #include <vdt/vdtMath.h>
50 template <
typename ObjType>
87 eleCollVMsAreKeyedTo_(conf,
"eleCollVMsAreKeyedTo", cc),
88 phoCollVMsAreKeyedTo_(conf,
"phoCollVMsAreKeyedTo", cc),
89 conversions_(conf,
"conversions", cc),
90 beamspot_(conf,
"beamspot", cc),
91 ecalRecHitsEB_(conf,
"ecalRecHitsEB", cc),
92 ecalRecHitsEE_(conf,
"ecalRecHitsEE", cc),
93 eleTrkIso_(conf,
"eleTrkIso", cc),
94 eleTrkIso04_(conf,
"eleTrkIso04", cc),
95 phoPhotonIso_(conf,
"phoPhotonIso", cc),
96 phoNeutralHadIso_(conf,
"phoNeutralHadIso", cc),
97 phoChargedHadIso_(conf,
"phoChargedHadIso", cc),
98 phoChargedHadWorstVtxIso_(conf,
"phoChargedHadWorstVtxIso", cc),
99 phoChargedHadWorstVtxConeVetoIso_(conf,
"phoChargedHadWorstVtxConeVetoIso", cc),
100 phoChargedHadPFPVIso_(conf,
"phoChargedHadPFPVIso", cc),
101 allowGsfTrkMatchForConvs_(conf.getParameter<bool>(
"allowGsfTrackForConvs")),
102 updateChargedHadPFPVIso_(conf.getParameter<bool>(
"updateChargedHadPFPVIso")) {}
126 <<
" in EG9X105ObjectUpdateModifier, line " << __LINE__ <<
" electron " << ele.
et() <<
" " << ele.
eta() <<
" "
128 <<
" failed to match to the electrons the key map was keyed to, check the map collection is correct";
153 <<
" in EG9X105ObjectUpdateModifier, line " << __LINE__ <<
" photon " << pho.
et() <<
" " << pho.
eta() <<
" "
155 <<
" failed to match to the photons the key map was keyed to, check the map collection is correct";
173 const bool isEB = seedClus->seed().subdetId() ==
EcalBarrel;
187 template <
typename ObjType>
190 for (
auto& objVMPtr : objsVMIsKeyedTo->ptrs()) {
191 if (obj.superCluster()->seed()->seed() == objVMPtr->superCluster()->seed()->seed())
const edm::Handle< T > & handle() const
void setDr04Isolation(const IsolationVariables &dr04)
void setPflowIsolationVariables(const PflowIsolationVariables &pfisol)
Set Particle Flow Isolation variables.
Analysis-level Photon class.
TokenHandlePair< edm::ValueMap< float > > eleTrkIso04_
TokenHandlePair< edm::ValueMap< float > > phoPhotonIso_
TokenHandlePair< edm::ValueMap< float > > phoChargedHadWorstVtxIso_
TokenHandlePair< edm::View< reco::Photon > > phoCollVMsAreKeyedTo_
void setEvent(const edm::Event &) final
void setHandle(const edm::Event &iEvent)
float chargedHadronWorstVtxGeomVetoIso
TokenHandlePair< reco::BeamSpot > beamspot_
edm::EDGetTokenT< T > token_
float chargedHadronWorstVtxIso
TokenHandlePair< EcalRecHitCollection > ecalRecHitsEE_
void setConversionRejectionVariables(const ConversionRejection &convRej)
TokenHandlePair< EcalRecHitCollection > ecalRecHitsEB_
void setDr03Isolation(const IsolationVariables &dr03)
const IsolationVariables & dr04IsolationVariables() const
TokenHandlePair< edm::ValueMap< float > > phoChargedHadWorstVtxConeVetoIso_
static edm::Ptr< ObjType > getPtrForValueMap(const ObjType &obj, const edm::Handle< edm::View< ObjType > > &objsVMIsKeyedTo)
Handle< PROD > getHandle(EDGetTokenT< PROD > token) const
bool allowGsfTrkMatchForConvs_
TokenHandlePair< edm::ValueMap< float > > eleTrkIso_
const std::string & name() const
reco::SuperClusterRef superCluster() const override
Ref to SuperCluster.
void modifyObject(pat::Photon &pho) const final
bool updateChargedHadPFPVIso_
bool isNull() const
Checks for null.
void setShowerShapeVariables(const ShowerShape &a)
TokenHandlePair< reco::ConversionCollection > conversions_
void modifyObject(pat::Electron &ele) const final
virtual GsfElectronCoreRef core() const
float chargedHadronPFPVIso
void full5x5_setShowerShapeVariables(const ShowerShape &a)
double et() const final
transverse energy
const ShowerShape & full5x5_showerShapeVariables() const
TokenHandlePair< edm::ValueMap< float > > phoChargedHadPFPVIso_
const IsolationVariables & dr03IsolationVariables() const
~EG9X105XObjectUpdateModifier() override
TokenHandlePair(const edm::ParameterSet &conf, const std::string &name, edm::ConsumesCollector &cc)
#define DEFINE_EDM_PLUGIN(factory, type, name)
const ConversionRejection & conversionRejectionVariables() const
void modifyObject(reco::GsfElectron &ele) const final
constexpr char Electron[]
const PflowIsolationVariables & getPflowIsolationVariables() const
Get Particle Flow Isolation variables block.
TokenHandlePair< edm::View< reco::GsfElectron > > eleCollVMsAreKeyedTo_
const ShowerShape & showerShapeVariables() const
EG9X105XObjectUpdateModifier(const edm::ParameterSet &conf, edm::ConsumesCollector &cc)
TokenHandlePair< edm::ValueMap< float > > phoNeutralHadIso_
SuperClusterRef superCluster() const override
reference to a SuperCluster
TokenHandlePair< edm::ValueMap< float > > phoChargedHadIso_
double eta() const final
momentum pseudorapidity