Overlay  0.16.0
Merger.h
1 #include "lcio.h"
2 // #include "IMPL/SimCalorimeterHitImpl.h"
3 // #include "IMPL/SimTrackerHitImpl.h"
4 //#include "EVENT/LCEvent.h"
5 
6 namespace EVENT{
7  class LCEvent ;
8  class LCCollection ;
9 }
10 
11 
12 namespace overlay {
13 
20  class Merger{
21 
22  public:
23 
35  static void mergeMC(EVENT::LCEvent* srcEvent, EVENT::LCEvent* destEvent, std::string mcDestString);
36 
50  static void mergeMC(EVENT::LCEvent* srcEvent, std::string mcSrcString, EVENT::LCEvent* destEvent, std::string mcDestString);
51 
59  static void merge(EVENT::LCEvent* srcEvent, EVENT::LCEvent* destEvent);
60 
73  static void merge(EVENT::LCEvent *srcEvent, EVENT::LCEvent *destEvent, std::map<std::string, std::string> *mergeMap);
74 
84  static void merge(EVENT::LCEvent* srcEvent, std::string srcString, EVENT::LCEvent* destEvent, std::string destString);
85 
110  static void merge(EVENT::LCCollection* src, EVENT::LCCollection* dest);
111 
112 
113  protected:
118  // inline long long cellID2long(int id0, int id1);
119 
120  }; // class
121 
122 } // namespace
Basic utility to merge two events or collections.
Definition: Merger.h:20
static void mergeMC(EVENT::LCEvent *srcEvent, EVENT::LCEvent *destEvent, std::string mcDestString)
Tries to merge collections with a name present in both events (like merge(EVENT::LCEvent*, EVENT::LCEvent*) but the MC particle collection in srcEvent is merged with the collection named mcDestString.
static void merge(EVENT::LCEvent *srcEvent, EVENT::LCEvent *destEvent)
Tries to merge collections with a name present in both events.