#include <PhysicsTools/UtilAlgos/interface/Merger.h>
Public Member Functions | |
Merger (const edm::ParameterSet &) | |
constructor from parameter set | |
~Merger () | |
destructor | |
Private Types | |
typedef std::vector < edm::InputTag > | vtag |
vector of strings | |
Private Member Functions | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
process an event | |
Private Attributes | |
vtag | src_ |
labels of the collections to be merged |
Template parameters:
Definition at line 30 of file Merger.h.
typedef std::vector<edm::InputTag> Merger< InputCollection, OutputCollection, P >::vtag [private] |
Merger< InputCollection, OutputCollection, P >::Merger | ( | const edm::ParameterSet & | par | ) | [inline, explicit] |
void Merger< InputCollection, OutputCollection, P >::produce | ( | edm::Event & | evt, | |
const edm::EventSetup & | ||||
) | [inline, private, virtual] |
process an event
Implements edm::EDProducer.
Definition at line 57 of file Merger.h.
References c, clone(), coll, edm::Event::getByLabel(), h, edm::Event::put(), s, and Merger< InputCollection, OutputCollection, P >::src_.
00057 { 00058 std::auto_ptr<OutputCollection> coll( new OutputCollection ); 00059 for( vtag::const_iterator s = src_.begin(); s != src_.end(); ++ s ) { 00060 edm::Handle<InputCollection> h; 00061 evt.getByLabel( * s, h ); 00062 for( typename InputCollection::const_iterator c = h->begin(); c != h->end(); ++c ) { 00063 coll->push_back( P::clone( * c ) ); 00064 } 00065 } 00066 evt.put( coll ); 00067 }
vtag Merger< InputCollection, OutputCollection, P >::src_ [private] |
labels of the collections to be merged
Definition at line 43 of file Merger.h.
Referenced by Merger< InputCollection, OutputCollection, P >::produce().