33 : ecalSeedToken_{consumes<ElectronSeedCollection>(iConfig.
getParameter<
InputTag>(
"EcalBasedSeeds"))} {
35 if (!tkSeedLabel_.
label().empty())
36 tkSeedToken_ = consumes<ElectronSeedCollection>(tkSeedLabel_);
38 produces<ElectronSeedCollection>();
44 auto output = std::make_unique<ElectronSeedCollection>();
59 vector<bool> TSeedMatched;
60 for (
unsigned int it = 0; it < TSeed.size(); it++) {
61 TSeedMatched.push_back(
false);
65 ElectronSeedCollection::const_iterator e_beg = ESeed.begin();
66 ElectronSeedCollection::const_iterator e_end = ESeed.end();
67 for (; e_beg != e_end; ++e_beg) {
69 bool AlreadyMatched =
false;
72 for (
unsigned int it = 0; it < TSeed.size(); it++) {
77 unsigned int hitShared = 0;
78 unsigned int hitSeed = 0;
79 for (
auto const& eh : e_beg->recHits()) {
84 for (
auto const& th : TSeed[it].
recHits()) {
97 if (hitShared == hitSeed) {
98 AlreadyMatched =
true;
99 TSeedMatched[it] =
true;
102 if (hitShared == (hitSeed - 1)) {
107 output->push_back(NewSeed);
111 for (
unsigned int it = 0; it < TSeed.size(); it++) {
112 if (!TSeedMatched[it])
113 output->push_back(TSeed[it]);