27 produces<edm::PtrVector<reco::Candidate>>();
37 auto result = std::make_unique<PtrVector<reco::Candidate>>();
38 std::set<reco::CandidatePtr> vetoedPtrs;
39 for (
auto const&
veto : *vetoes) {
40 auto const n =
veto.numberOfSourceCandidatePtrs();
41 for (
size_t j {}; j<
n; ++j) {
42 vetoedPtrs.insert(
veto.sourceCandidatePtr(j));
48 for (
size_t i {};
i<cands->size(); ++
i) {
49 auto const c = cands->ptrAt(
i);
50 if (vetoedPtrs.find(
c)==vetoedPtrs.cend()) {
T getParameter(std::string const &) const
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
void produce(edm::StreamID, edm::Event &, edm::EventSetup const &) const override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
#define DEFINE_FWK_MODULE(type)
edm::EDGetTokenT< edm::View< reco::Candidate > > vetoSrcToken_
CandPtrProjector(edm::ParameterSet const &iConfig)
edm::EDGetTokenT< edm::View< reco::Candidate > > candSrcToken_