1 #ifndef IsolationAlgos_IsolationProducer_h 2 #define IsolationAlgos_IsolationProducer_h 22 template <
typename Alg>
29 template <
typename Alg>
35 template <
typename C1,
53 template <
typename C1,
typename C2,
typename Alg,
typename OutputCollection,
typename Setup>
59 produces<OutputCollection>();
62 template <
typename C1,
typename C2,
typename Alg,
typename OutputCollection,
typename Setup>
65 template <
typename C1,
typename C2,
typename Alg,
typename OutputCollection,
typename Setup>
76 typename OutputCollection::refprod_type ref(
src);
77 auto isolations = std::make_unique<OutputCollection>(ref);
80 for (
typename C1::const_iterator lep =
src->begin(); lep !=
src->end(); ++lep) {
82 isolations->setValue(
i++, iso);
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
S make(const edm::ParameterSet &cfg)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
static ESConsumesToken esConsumes(edm::ConsumesCollector)
Container::value_type value_type
Setup::ESConsumesToken esToken_
edm::EDGetTokenT< C1 > srcToken_
def template(fileName, svg, replaceme="REPLACEME")
~IsolationProducer() override
static void init(Alg &, const edm::EventSetup &, ESConsumesToken)
edm::EDGetTokenT< C2 > elementsToken_
IsolationProducer(const edm::ParameterSet &)
NullIsolationAlgorithmSetup< Alg > type
void produce(edm::Event &, const edm::EventSetup &) override