1 #ifndef CommonTools_ParticleFlow_IsolatedPFCandidateSelectorDefinition
2 #define CommonTools_ParticleFlow_IsolatedPFCandidateSelectorDefinition
35 std::vector< edm::Handle<IsoMap> >
43 std::vector< edm::Handle<IsoMap> >
55 for( collection::const_iterator pfc = hc->begin();
56 pfc != hc->end(); ++pfc, ++
key) {
60 double isoSumCharged=0.0;
61 double isoSumNeutral=0.0;
63 for(
unsigned iMap = 0; iMap<isoMapsCharged.size(); ++iMap) {
64 const IsoMap & isoMap = *(isoMapsCharged[iMap]);
65 double val = isoMap[candidate];
69 for(
unsigned iMap = 0; iMap<isoMapsNeutral.size(); ++iMap) {
70 const IsoMap & isoMap = *(isoMapsNeutral[iMap]);
71 double val = isoMap[candidate];
77 const IsoMap& isoMap = *dBetaH;
78 double dBetaVal = isoMap[candidate];
80 isoSumNeutral = dBetaCorIsoSumNeutral>0 ? dBetaCorIsoSumNeutral : 0;
83 double isoSum=isoSumCharged+isoSumNeutral;
86 isoSum /= candidate->pt();
97 selected_.back().setSourceCandidatePtr( ptrToMother );
edm::ValueMap< double > IsoMap
edm::InputTag deltaBetaIsolationValueMap_
std::vector< edm::InputTag > isolationValueMapChargedLabels_
void select(const HandleToCollection &hc, const edm::EventBase &e, const edm::EventSetup &s)
bool doDeltaBetaCorrection_
Particle reconstructed by the particle flow algorithm.
bool getByLabel(InputTag const &, Handle< T > &) const
IsolatedPFCandidateSelectorDefinition(const edm::ParameterSet &cfg)
std::vector< edm::InputTag > isolationValueMapNeutralLabels_