39 virtual void endJob()
override;
49 electronSrcToken_(consumes<edm::
View<
reco::GsfElectron> >(iConfig.getParameter<edm::InputTag>(
"electronSource"))),
53 produces<edm::RefToBaseVector<reco::GsfElectron> >();
72 std::auto_ptr< std::vector<size_t> > duplicates = duplicateRemover_.duplicatesToRemove(*
electrons);
74 std::vector<size_t>::const_iterator itdup = duplicates->begin(), enddup = duplicates->end();
76 while ((itdup != enddup) && (*itdup <
i)) { ++itdup; }
77 if ((itdup != enddup) && (*itdup ==
i))
continue;
82 pass_ += result->size();
virtual void endJob() override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
Remove duplicates from the list of electrons.
virtual void produce(edm::Event &iEvent, const edm::EventSetup &iSetup) override
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
pat::DuplicatedElectronRemover duplicateRemover_
DuplicatedElectronCleaner(const edm::ParameterSet &iConfig)
edm::EDGetTokenT< edm::View< reco::GsfElectron > > electronSrcToken_
unsigned long long uint64_t
~DuplicatedElectronCleaner()