1 #ifndef UtilAlgos_Merger_h 2 #define UtilAlgos_Merger_h 45 typedef std::vector<edm::EDGetTokenT<InputCollection>>
vtoken;
50 template <
typename InputCollection,
typename OutputCollection,
typename P>
54 produces<OutputCollection>();
57 template <
typename InputCollection,
typename OutputCollection,
typename P>
60 template <
typename InputCollection,
typename OutputCollection,
typename P>
65 for (
typename vtoken::const_iterator
s = srcToken_.begin();
s != srcToken_.end(); ++
s) {
68 for (
typename InputCollection::const_iterator
c =
h->begin();
c !=
h->end(); ++
c) {
75 template <
typename InputCollection,
typename OutputCollection,
typename P>
78 desc.add<std::vector<edm::InputTag>>(
"src",
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
auto vector_transform(std::vector< InputType > const &input, Function predicate) -> std::vector< typename std::remove_cv< typename std::remove_reference< decltype(predicate(input.front()))>::type >::type >
std::vector< edm::EDGetTokenT< InputCollection > > vtoken
vector of strings
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
process an event
def template(fileName, svg, replaceme="REPLACEME")
~Merger() override
destructor
std::pair< OmniClusterRef, TrackingParticleRef > P
TEveGeoShape * clone(const TEveElement *element, TEveElement *parent)
Merger(const edm::ParameterSet &)
constructor from parameter set
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
vtoken srcToken_
labels of the collections to be merged