CMS 3D CMS Logo

CollectionMerger.h
Go to the documentation of this file.
1 
8 #ifndef TauAnalysis_MCEmbeddingTools_CollectionMerger_H
9 #define TauAnalysis_MCEmbeddingTools_CollectionMerger_H
10 
18 
21 
24 
28 
32 
38 
39 #include <iostream>
40 #include <map>
41 #include <string>
42 
43 template <typename T1, typename T2>
45 public:
46  explicit CollectionMerger(const edm::ParameterSet &);
47  ~CollectionMerger() override;
48 
49 private:
50  void produce(edm::Event &, const edm::EventSetup &) override;
51 
52  typedef T1 MergeCollection;
53  typedef T2 BaseHit;
54  std::map<std::string, std::vector<edm::EDGetTokenT<MergeCollection>>> inputs_;
55 
57 
61 
63  std::unique_ptr<MergeCollection> &output,
64  std::vector<edm::Handle<MergeCollection>> &inputCollections);
65  void fill_output_obj_tracker(std::unique_ptr<MergeCollection> &output,
66  std::vector<edm::Handle<MergeCollection>> &inputCollections,
67  bool print_pixel = false);
68  void fill_output_obj_calo(std::unique_ptr<MergeCollection> &output,
69  std::vector<edm::Handle<MergeCollection>> &inputCollections);
70  void fill_output_obj_muonchamber(std::unique_ptr<MergeCollection> &output,
71  std::vector<edm::Handle<MergeCollection>> &inputCollections);
72  // seed merger
74  std::unique_ptr<MergeCollection> &output,
75  std::vector<edm::Handle<MergeCollection>> &inputCollections);
76 
78  void willconsume(const edm::ParameterSet &iConfig);
79 };
80 
81 #endif
std::map< std::string, std::vector< edm::EDGetTokenT< MergeCollection > > > inputs_
edm::EDGetTokenT< reco::SuperClusterCollection > inputs_SC_
~CollectionMerger() override
void fill_output_obj_muonchamber(std::unique_ptr< MergeCollection > &output, std::vector< edm::Handle< MergeCollection >> &inputCollections)
static PFTauRenderPlugin instance
void fill_output_obj_calo(std::unique_ptr< MergeCollection > &output, std::vector< edm::Handle< MergeCollection >> &inputCollections)
void willproduce(std::string instance, std::string alias)
edm::EDGetTokenT< reco::SuperClusterCollection > inputs_scEB_
void fill_output_obj(edm::Event &, std::unique_ptr< MergeCollection > &output, std::vector< edm::Handle< MergeCollection >> &inputCollections)
edm::EDGetTokenT< reco::SuperClusterCollection > inputs_scEE_
edm::ValueMap< reco::TrackRefVector > TrackToTrackMapnew
void produce(edm::Event &, const edm::EventSetup &) override
void fill_output_obj_seed(edm::Event &, std::unique_ptr< MergeCollection > &output, std::vector< edm::Handle< MergeCollection >> &inputCollections)
void willconsume(const edm::ParameterSet &iConfig)
void fill_output_obj_tracker(std::unique_ptr< MergeCollection > &output, std::vector< edm::Handle< MergeCollection >> &inputCollections, bool print_pixel=false)
Definition: output.py:1
CollectionMerger(const edm::ParameterSet &)
edm::EDGetTokenT< TrackToTrackMapnew > inputs_fixtrackrefs_
edm::EDGetTokenT< reco::TrackCollection > inputs_fixtrackcol_