1 #ifndef PhysicsTools_PFCandProducer_IsolatedPFCandidateSelectorDefinition
2 #define PhysicsTools_PFCandProducer_IsolatedPFCandidateSelectorDefinition
21 isolationCuts_(cfg.getParameter< std::vector<double> >(
"isolationCuts")),
26 throw cms::Exception(
"BadConfiguration")<<
"the vector of isolation ValueMaps and the vector of the corresponding cuts must have the same size."<<std::endl;
37 std::vector< edm::Handle<IsoMap> >
45 for( collection::const_iterator pfc = hc->begin();
46 pfc != hc->end(); ++pfc, ++
key) {
51 for(
unsigned iMap = 0; iMap<isoMaps.size(); ++iMap) {
53 const IsoMap & isoMap = *(isoMaps[iMap]);
55 double val = isoMap[candidate];
57 if(
isRelative_ && candidate->pt()>0.0) val/=candidate->pt();
76 selected_.back().setSourceCandidatePtr( ptrToMother );
edm::ValueMap< double > IsoMap
std::vector< double > isolationCuts_
double combinedIsolationCut_
bool getByLabel(const InputTag &, Handle< T > &) const
void select(const HandleToCollection &hc, const edm::EventBase &e, const edm::EventSetup &s)
Particle reconstructed by the particle flow algorithm.
IsolatedPFCandidateSelectorDefinition(const edm::ParameterSet &cfg)
std::vector< edm::InputTag > isolationValueMapLabels_