24 (iConfig.getParameter<
edm::InputTag>(
"EgammaCandidates"))),
26 (iConfig.getParameter<
edm::InputTag>(
"EgammaGsfTracks"))),
28 "SigmaIEtaIEtaMap"))),
29 HoverEMap_(consumes<
RecoEcalCandMap>(iConfig.getParameter<
edm::InputTag>(
"HoverEMap"))),
35 "OneOEMinusOneOPMap"))),
37 "EcalPFClusterIsoMap"))),
39 "EleGsfTrackIsoMap"))),
41 "HcalPFClusterIsoMap"))),
42 egammaPtCut(iConfig.getParameter<double>(
"egammaPtCut")),
43 egammaEtaCut(iConfig.getParameter<double>(
"egammaEtaCut")),
44 egammaHoverECut(iConfig.getParameter<double>(
"egammaHoverECut"))
47 produces<ScoutingElectronCollection>();
48 produces<ScoutingPhotonCollection>();
64 EgammaCandidateCollection)){
73 EgammaGsfTrackCollection)){
153 for (
auto &candidate : *EgammaCandidateCollection) {
172 for (
auto &
track: *EgammaGsfTrackCollection) {
177 if (scRefFromTrk == scRef) {
180 charge =
track.charge();
183 if (charge == -999) {
184 outPhotons->emplace_back(candidate.pt(), candidate.eta(), candidate.phi(),
185 candidate.mass(), (*SigmaIEtaIEtaMap)[candidateRef],
186 (*HoverEMap)[candidateRef],
187 (*EcalPFClusterIsoMap)[candidateRef],
188 (*HcalPFClusterIsoMap)[candidateRef]);
190 outElectrons->emplace_back(candidate.pt(), candidate.eta(), candidate.phi(),
191 candidate.mass(),
d0,
dz, (*DetaMap)[candidateRef],
192 (*DphiMap)[candidateRef], (*SigmaIEtaIEtaMap)[candidateRef],
193 (*HoverEMap)[candidateRef],
194 (*OneOEMinusOneOPMap)[candidateRef],
195 (*MissingHitsMap)[candidateRef],
charge,
196 (*EcalPFClusterIsoMap)[candidateRef],
197 (*HcalPFClusterIsoMap)[candidateRef],
198 (*EleGsfTrackIsoMap)[candidateRef]);
213 "hltEgammaClusterShape:sigmaIEtaIEta5x5"));
219 "hltEgammaGsfTrackVars:OneOESuperMinusOneOP"));
223 desc.
add<
double>(
"egammaPtCut", 4.0);
224 desc.
add<
double>(
"egammaEtaCut", 2.5);
225 desc.
add<
double>(
"egammaHoverECut", 1.0);
226 descriptions.
add(
"hltScoutingEgammaProducer", desc);
helper::MatcherGetRef< C >::ref_type getRef(const Handle< C > &c, size_t k)
const edm::EDGetTokenT< RecoEcalCandMap > SigmaIEtaIEtaMap_
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
def setup(process, global_tag, zero_tesla=False)
const edm::EDGetTokenT< reco::GsfTrackCollection > EgammaGsfTrackCollection_
const edm::EDGetTokenT< RecoEcalCandMap > EleGsfTrackIsoMap_
const edm::EDGetTokenT< RecoEcalCandMap > HoverEMap_
const edm::EDGetTokenT< reco::RecoEcalCandidateCollection > EgammaCandidateCollection_
const edm::EDGetTokenT< RecoEcalCandMap > DetaMap_
#define DEFINE_FWK_MODULE(type)
const double egammaHoverECut
std::vector< GsfTrack > GsfTrackCollection
collection of GsfTracks
const double egammaEtaCut
ParameterDescriptionBase * add(U const &iLabel, T const &value)
bool isNull() const
Checks for null.
std::vector< ScoutingElectron > ScoutingElectronCollection
void produce(edm::StreamID sid, edm::Event &iEvent, edm::EventSetup const &setup) const final
const edm::EDGetTokenT< RecoEcalCandMap > OneOEMinusOneOPMap_
const edm::EDGetTokenT< RecoEcalCandMap > MissingHitsMap_
const edm::EDGetTokenT< RecoEcalCandMap > DphiMap_
void add(std::string const &label, ParameterSetDescription const &psetDescription)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::vector< RecoEcalCandidate > RecoEcalCandidateCollection
collectin of RecoEcalCandidate objects
~HLTScoutingEgammaProducer() override
const edm::EDGetTokenT< RecoEcalCandMap > HcalPFClusterIsoMap_
std::vector< ScoutingPhoton > ScoutingPhotonCollection
const edm::EDGetTokenT< RecoEcalCandMap > EcalPFClusterIsoMap_
HLTScoutingEgammaProducer(const edm::ParameterSet &)