20 #include <unordered_map>
48 _maxHoverE(conf.getParameter<double>(
"maximumHoverE")),
49 _pTbyPass(conf.getParameter<double>(
"minPTforBypass")),
50 _minSCPt(conf.getParameter<double>(
"minSuperClusterPt")),
51 _superClustersArePF(conf.getParameter<
bool>(
"superClustersArePF")) {}
60 auto eb_scs =
e.getHandle(
_srcEB);
61 auto ee_scs =
e.getHandle(
_srcEE);
63 elems.reserve(elems.size() + eb_scs->size() + ee_scs->size());
68 auto bsc = eb_scs->cbegin();
69 auto esc = eb_scs->cend();
72 for (
auto sc =
bsc; sc != esc; ++sc) {
75 auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual);
76 const double scpT =
ptFast(sc->energy(), sc->position(),
_zero);
78 const double H_tower =
80 const double HoverE = H_tower / sc->energy();
84 SCs_end = elems.emplace(SCs_end, scbe);
89 bsc = ee_scs->cbegin();
91 for (
auto sc =
bsc; sc != esc; ++sc) {
94 auto sc_elem = std::find_if(elems.begin(), SCs_end, myEqual);
95 const double scpT =
ptFast(sc->energy(), sc->position(),
_zero);
97 const double H_tower =
99 const double HoverE = H_tower / sc->energy();
103 SCs_end = elems.emplace(SCs_end, scbe);
107 elems.shrink_to_fit();