69 recoEcalCandidateProducer_(
72 useGsfTrack_(
config.getParameter<
bool>(
"useGsfTrack")),
73 useSCRefs_(
config.getParameter<
bool>(
"useSCRefs")),
74 egTrkIsoPtMin_(
config.getParameter<double>(
"egTrkIsoPtMin")),
75 egTrkIsoConeSize_(
config.getParameter<double>(
"egTrkIsoConeSize")),
76 egTrkIsoZSpan_(
config.getParameter<double>(
"egTrkIsoZSpan")),
77 egTrkIsoRSpan_(
config.getParameter<double>(
"egTrkIsoRSpan")),
78 egTrkIsoVetoConeSizeBarrel_(
config.getParameter<double>(
"egTrkIsoVetoConeSizeBarrel")),
79 egTrkIsoVetoConeSizeEndcap_(
config.getParameter<double>(
"egTrkIsoVetoConeSizeEndcap")),
80 egTrkIsoStripBarrel_(
config.getParameter<double>(
"egTrkIsoStripBarrel")),
81 egTrkIsoStripEndcap_(
config.getParameter<double>(
"egTrkIsoStripEndcap")) {
84 produces<reco::RecoEcalCandidateIsolationMap>();
86 produces<reco::ElectronIsolationMap>();
97 desc.add<
double>(
"egTrkIsoPtMin", 1.0);
98 desc.add<
double>(
"egTrkIsoConeSize", 0.3);
99 desc.add<
double>(
"egTrkIsoZSpan", 0.15);
100 desc.add<
double>(
"egTrkIsoRSpan", 999999.0);
101 desc.add<
double>(
"egTrkIsoVetoConeSizeBarrel", 0.03);
102 desc.add<
double>(
"egTrkIsoVetoConeSizeEndcap", 0.03);
103 desc.add<
double>(
"egTrkIsoStripBarrel", 0.03);
104 desc.add<
double>(
"egTrkIsoStripEndcap", 0.03);
105 desc.add<
bool>(
"useGsfTrack",
false);
106 desc.add<
bool>(
"useSCRefs",
false);
108 descriptions.
add(
"hltEgammaHLTElectronTrackIsolationProducers",
desc);
144 for (reco::RecoEcalCandidateCollection::const_iterator iRecoEcalCand = recoEcalCandHandle->begin();
145 iRecoEcalCand != recoEcalCandHandle->end();
150 for (reco::ElectronCollection::const_iterator eleIt = electronHandle->begin(); eleIt != electronHandle->end();
152 if (eleIt->superCluster() == recoEcalCandRef->superCluster()) {
158 if (eleRef.isNonnull()) {
160 isol = isoAlgo.
getIso(eleTrk).second;
162 recoEcalCandMap.
insert(recoEcalCandRef, isol);
165 iEvent.put(std::make_unique<reco::RecoEcalCandidateIsolationMap>(recoEcalCandMap));
168 for (reco::ElectronCollection::const_iterator iElectron = electronHandle->begin();
169 iElectron != electronHandle->end();
173 float isol = isoAlgo.
getIso(eleTrk).second;
174 eleMap.
insert(eleRef, isol);
177 iEvent.put(std::make_unique<reco::ElectronIsolationMap>(eleMap));