9 #include <unordered_map>
23 std::unique_ptr<const PhotonSelectorAlgo>
_selector;
34 _superClustersArePF(conf.getParameter<
bool>(
"superClustersArePF")) {
36 _selectionChoice = _selectionTypes.at(selChoice);
39 const float trackIso_const = selDef.
getParameter<
double>(
"trackIsoConstTerm");
40 const float trackIso_slope = selDef.
getParameter<
double>(
"trackIsoSlopeTerm");
41 const float ecalIso_const = selDef.
getParameter<
double>(
"ecalIsoConstTerm");
42 const float ecalIso_slope = selDef.
getParameter<
double>(
"ecalIsoSlopeTerm");
43 const float hcalIso_const = selDef.
getParameter<
double>(
"hcalIsoConstTerm");
44 const float hcalIso_slope = selDef.
getParameter<
double>(
"hcalIsoSlopeTerm");
46 const float loose_hoe = selDef.
getParameter<
double>(
"LooseHoverE");
47 const float combIso = selDef.
getParameter<
double>(
"combIsoConstTerm");
64 elems.reserve(elems.size() +
photons->size());
66 auto SCs_end = std::partition(
69 auto bphoton =
photons->cbegin();
78 auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual);
79 if (sc_elem != SCs_end) {
80 scbe = static_cast<reco::PFBlockElementSuperCluster*>(sc_elem->get());
96 SCs_end = elems.insert(SCs_end, ElementType(scbe));
101 elems.shrink_to_fit();