CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DataMixingModule.h
Go to the documentation of this file.
1 #ifndef DataMixingModule_h
2 #define SimDataMixingModule_h
3 
16 
21 
24 
35 
36 #include <map>
37 #include <vector>
38 #include <string>
39 
40 
41 namespace edm
42 {
44  {
45  public:
46 
48  explicit DataMixingModule(const edm::ParameterSet& ps);
49 
51  virtual ~DataMixingModule();
52 
53  virtual void beginJob() {}
54 
55  virtual void setBcrOffset();
56  virtual void setSourceOffset(const unsigned int is);
57 
58  private:
59  // data specifiers
60 
61  // Ecal
62  //output:
63  std::string EBRecHitCollectionDM_; // secondary name to be given to EB collection of hits
64  std::string EERecHitCollectionDM_; // secondary name to be given to EE collection of hits
65  std::string ESRecHitCollectionDM_; // secondary name to be given to EE collection of hits
66  //Digis:
67  //output
68  std::string EBDigiCollectionDM_; // secondary name to be given to EB collection of hits
69  std::string EEDigiCollectionDM_; // secondary name to be given to EE collection of hits
70  std::string ESDigiCollectionDM_; // secondary name to be given to EE collection of hits
71 
72  // Hcal
73  // Rechits:
74  // output:
75  std::string HBHERecHitCollectionDM_; // secondary name to be given to HBHE collection of hits
76  std::string HORecHitCollectionDM_ ; // secondary name to be given to HO collection of hits
77  std::string HFRecHitCollectionDM_ ; // secondary name to be given to HF collection of hits
78  std::string ZDCRecHitCollectionDM_ ; // secondary name to be given to ZDC collection of hits
79  // Digis:
80  // output:
81  std::string HBHEDigiCollectionDM_; // secondary name to be given to HBHE collection of hits
82  std::string HODigiCollectionDM_ ; // secondary name to be given to HO collection of hits
83  std::string HFDigiCollectionDM_ ; // secondary name to be given to HF collection of hits
84  std::string ZDCDigiCollectionDM_ ; // secondary name to be given to ZDC collection of hits
85 
86  // Muons
87  // output:
88  std::string DTDigiCollectionDM_; // secondary name to be given to new DT digis
89  std::string RPCDigiCollectionDM_; // secondary name to be given to new RPC digis
90  std::string CSCStripDigiCollectionDM_; // secondary name given to new collection of CSC Strip digis
91  std::string CSCWireDigiCollectionDM_; // secondary name given to new collection of CSC wire digis
92  std::string CSCComparatorDigiCollectionDM_; // " " CSC Comparator digis
93 
94  // SiStrips
95  std::string SiStripDigiCollectionDM_ ; // secondary name to be given to new SiStrip digis
96 
97  // SiPixels
98  std::string PixelDigiCollectionDM_ ; // secondary name to be given to new SiPixel digis
99 
100  // Tracks
102  // FastSimulation or not?
103 
105 
106  // Submodules to handle the individual detectors
107 
111 
112  // Hcal
113 
117 
120 
121  // Muons
122 
124 
125  // Si-Strips
126 
131 
132  // Pixels
133 
135 
136  // Tracks
137 
139 
140  virtual void createnewEDProduct();
141  virtual void getSubdetectorNames();
142 
143  // copies, with EventSetup
144  virtual void put(edm::Event &e,const edm::EventSetup& ES) ;
145  virtual void addSignals(const edm::Event &e, const edm::EventSetup& ES);
146  virtual void doPileUp(edm::Event &e,const edm::EventSetup& ES);
147  virtual void addPileups(const int bcr, edm::EventPrincipal*, unsigned int EventId,unsigned int worker,const edm::EventSetup& ES);
148  virtual void checkSignal(const edm::Event &e);
149 
150 
151  // internally used information : subdetectors present in input
152  std::vector<std::string> Subdetectors_;
153 
154  // unsigned int eventId_; //=0 for signal, from 1-n for pileup events
155 
157  std::string label_;
158 
159  };
160 }//edm
161 
162 #endif
std::string siStripRawDigiSource_
std::string HFDigiCollectionDM_
virtual void setSourceOffset(const unsigned int is)
std::string HBHERecHitCollectionDM_
std::string ZDCRecHitCollectionDM_
DataMixingGeneralTrackWorker * GeneralTrackWorker_
std::string CSCStripDigiCollectionDM_
std::string SiStripDigiCollectionDM_
DataMixingModule(const edm::ParameterSet &ps)
virtual void createnewEDProduct()
std::string CSCWireDigiCollectionDM_
DataMixingSiStripRawWorker * SiStripRawWorker_
DataMixingSiPixelWorker * SiPixelWorker_
std::string RPCDigiCollectionDM_
std::string ZDCDigiCollectionDM_
DataMixingHcalDigiWorker * HcalDigiWorker_
DataMixingEMWorker * EMWorker_
std::string GeneralTrackCollectionDM_
virtual void addSignals(const edm::Event &e, const edm::EventSetup &ES)
virtual void setBcrOffset()
virtual void doPileUp(edm::Event &e, const edm::EventSetup &ES)
std::string HORecHitCollectionDM_
DataMixingMuonWorker * MuonWorker_
virtual void getSubdetectorNames()
std::string EEDigiCollectionDM_
std::string HFRecHitCollectionDM_
std::string HBHEDigiCollectionDM_
std::string EBRecHitCollectionDM_
std::string CSCComparatorDigiCollectionDM_
DataMixingSiStripWorker * SiStripWorker_
std::string ESRecHitCollectionDM_
std::string EERecHitCollectionDM_
std::string ESDigiCollectionDM_
virtual void checkSignal(const edm::Event &e)
std::string DTDigiCollectionDM_
std::string EBDigiCollectionDM_
virtual void beginJob()
DataMixingHcalWorker * HcalWorker_
std::string HODigiCollectionDM_
std::string PixelDigiCollectionDM_
DataMixingHcalDigiWorkerProd * HcalDigiWorkerProd_
DataMixingEMDigiWorker * EMDigiWorker_
std::vector< std::string > Subdetectors_
virtual void addPileups(const int bcr, edm::EventPrincipal *, unsigned int EventId, unsigned int worker, const edm::EventSetup &ES)
virtual void put(edm::Event &e, const edm::EventSetup &ES)