CMS 3D CMS Logo

DataMixingModule.h
Go to the documentation of this file.
1 #ifndef SimGeneral_DataMixingModule_DataMixingModule_h
2 #define SimGeneral_DataMixingModule_DataMixingModule_h
3 
16 
20 
23 
25 
36 
37 #include <map>
38 #include <string>
39 #include <vector>
40 
41 namespace edm {
42 
43  class ModuleCallingContext;
44 
46  public:
48  explicit DataMixingModule(const edm::ParameterSet &ps, MixingCache::Config const *globalConf);
49 
51  ~DataMixingModule() override;
52 
53  // copies, with EventSetup
54  void checkSignal(const edm::Event &e) override{};
55  void createnewEDProduct() override {}
56  void addSignals(const edm::Event &e, const edm::EventSetup &ES) override;
57  void doPileUp(edm::Event &e, const edm::EventSetup &ES) override;
58  void put(edm::Event &e, const edm::EventSetup &ES) override;
59 
60  void initializeEvent(edm::Event const &e, edm::EventSetup const &eventSetup) override;
61  void beginRun(edm::Run const &run, edm::EventSetup const &eventSetup) override;
62  bool pileWorker(
63  const edm::EventPrincipal &, int bcr, int EventId, const edm::EventSetup &ES, ModuleCallingContext const *);
64  // virtual void beginJob();
65  // virtual void endJob();
66  void beginLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override;
67  void endLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override;
68  void endRun(const edm::Run &r, const edm::EventSetup &setup) override;
69 
70  private:
71  // data specifiers
72 
73  // Ecal
74  // output:
75  std::string EBRecHitCollectionDM_; // secondary name to be given to EB
76  // collection of hits
77  std::string EERecHitCollectionDM_; // secondary name to be given to EE
78  // collection of hits
79  std::string ESRecHitCollectionDM_; // secondary name to be given to EE
80  // collection of hits
81  // Digis:
82  // output
83  std::string EBDigiCollectionDM_; // secondary name to be given to EB
84  // collection of hits
85  std::string EEDigiCollectionDM_; // secondary name to be given to EE
86  // collection of hits
87  std::string ESDigiCollectionDM_; // secondary name to be given to EE
88  // collection of hits
89 
90  // Hcal
91  // Rechits:
92  // output:
93  std::string HBHERecHitCollectionDM_; // secondary name to be given to HBHE
94  // collection of hits
95  std::string HORecHitCollectionDM_; // secondary name to be given to HO
96  // collection of hits
97  std::string HFRecHitCollectionDM_; // secondary name to be given to HF
98  // collection of hits
99  std::string ZDCRecHitCollectionDM_; // secondary name to be given to ZDC
100  // collection of hits
101  // Digis:
102  // output:
103  std::string HBHEDigiCollectionDM_; // secondary name to be given to HBHE
104  // collection of hits
105  std::string HODigiCollectionDM_; // secondary name to be given to HO
106  // collection of hits
107  std::string HFDigiCollectionDM_; // secondary name to be given to HF
108  // collection of hits
109  std::string ZDCDigiCollectionDM_; // secondary name to be given to ZDC
110  // collection of hits
111  std::string QIE10DigiCollectionDM_; // secondary name to be given to QIE10
112  // collection of hits
113  std::string QIE11DigiCollectionDM_; // secondary name to be given to QIE11
114  // collection of hits
115 
116  // Muons
117  // output:
118  std::string DTDigiCollectionDM_; // secondary name to be given to new DT digis
119  std::string RPCDigiCollectionDM_; // secondary name to be given to new RPC digis
120  std::string CSCStripDigiCollectionDM_; // secondary name given to new
121  // collection of CSC Strip digis
122  std::string CSCWireDigiCollectionDM_; // secondary name given to new
123  // collection of CSC wire digis
124  std::string CSCComparatorDigiCollectionDM_; // " " CSC Comparator digis
125 
126  // SiStrips
127  std::string SiStripDigiCollectionDM_; // secondary name to be given to new
128  // SiStrip digis
129 
130  // SiPixels
131  std::string PixelDigiCollectionDM_; // secondary name to be given to new SiPixel digis
132 
133  // merge tracker digis or tracks?
135 
136  // Submodules to handle the individual detectors
137 
139 
143 
144  // Hcal
145 
149 
150  // tokens needed to DataMixingHcalDigiWorkerProd
151  edm::InputTag EBPileInputTag_; // InputTag for Pileup Digis collection
152  edm::InputTag EEPileInputTag_; // InputTag for Pileup Digis collection
153  edm::InputTag ESPileInputTag_; // InputTag for Pileup Digis collection
154  edm::InputTag HBHEPileInputTag_; // InputTag for Pileup Digis collection
155  edm::InputTag HOPileInputTag_; // InputTag for Pileup Digis collection
156  edm::InputTag HFPileInputTag_; // InputTag for Pileup Digis collection
157  edm::InputTag ZDCPileInputTag_; // InputTag for Pileup Digis collection
158  edm::InputTag QIE10PileInputTag_; // InputTag for Pileup Digis collection
159  edm::InputTag QIE11PileInputTag_; // InputTag for Pileup Digis collection
166 
169 
172 
173  // Muons
174 
176 
177  // Si-Strips
178 
183 
184  // Pixels
185 
187 
188  virtual void getSubdetectorNames();
189 
190  // internally used information : subdetectors present in input
191  std::vector<std::string> Subdetectors_;
192 
193  // unsigned int eventId_; //=0 for signal, from 1-n for pileup events
194 
196  };
197 } // namespace edm
198 
199 #endif
edm::DataMixingModule::HODigiCollectionDM_
std::string HODigiCollectionDM_
Definition: DataMixingModule.h:105
edm::DataMixingModule::PixelDigiCollectionDM_
std::string PixelDigiCollectionDM_
Definition: DataMixingModule.h:131
Handle.h
PileupSummaryInfo.h
edm::DataMixingModule::QIE11PileInputTag_
edm::InputTag QIE11PileInputTag_
Definition: DataMixingModule.h:159
edm::DataMixingModule::tok_zdc_
edm::EDGetTokenT< ZDCDigitizerTraits::DigiCollection > tok_zdc_
Definition: DataMixingModule.h:163
edm::DataMixingModule::MergeEMDigis_
bool MergeEMDigis_
Definition: DataMixingModule.h:142
edm::DataMixingHcalDigiWorkerProd
Definition: DataMixingHcalDigiWorkerProd.h:43
edm::DataMixingModule::AddedPileup_
bool AddedPileup_
Definition: DataMixingModule.h:171
edm::DataMixingModule::CSCStripDigiCollectionDM_
std::string CSCStripDigiCollectionDM_
Definition: DataMixingModule.h:120
edm::DataMixingModule::MergeHcalDigisProd_
bool MergeHcalDigisProd_
Definition: DataMixingModule.h:168
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
edm::Run
Definition: Run.h:45
edm::EDGetTokenT
Definition: EDGetToken.h:33
edm::DataMixingModule::endRun
void endRun(const edm::Run &r, const edm::EventSetup &setup) override
Definition: DataMixingModule.cc:250
edm::DataMixingModule::beginLuminosityBlock
void beginLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override
Definition: DataMixingModule.cc:461
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::DataMixingModule::ZDCRecHitCollectionDM_
std::string ZDCRecHitCollectionDM_
Definition: DataMixingModule.h:99
edm::DataMixingModule::siStripRawDigiSource_
std::string siStripRawDigiSource_
Definition: DataMixingModule.h:182
edm::DataMixingModule::doPileUp
void doPileUp(edm::Event &e, const edm::EventSetup &ES) override
Definition: DataMixingModule.cc:380
edm::DataMixingModule::tok_ho_
edm::EDGetTokenT< HODigitizerTraits::DigiCollection > tok_ho_
Definition: DataMixingModule.h:161
edm::DataMixingModule::checkSignal
void checkSignal(const edm::Event &e) override
Definition: DataMixingModule.h:54
edm::DataMixingModule::QIE10PileInputTag_
edm::InputTag QIE10PileInputTag_
Definition: DataMixingModule.h:158
edm::DataMixingModule::MergeTrackerDigis_
bool MergeTrackerDigis_
Definition: DataMixingModule.h:134
edm::DataMixingModule::useSiStripRawDigi_
bool useSiStripRawDigi_
Definition: DataMixingModule.h:181
edm::BMixingModule
Definition: BMixingModule.h:40
edm::DataMixingModule::SiStripDigiCollectionDM_
std::string SiStripDigiCollectionDM_
Definition: DataMixingModule.h:127
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
edm::DataMixingModule::QIE10DigiCollectionDM_
std::string QIE10DigiCollectionDM_
Definition: DataMixingModule.h:111
edm::DataMixingModule::HcalDigiWorker_
DataMixingHcalDigiWorker * HcalDigiWorker_
Definition: DataMixingModule.h:147
edm::DataMixingSiPixelWorker
Definition: DataMixingSiPixelWorker.h:36
DataMixingSiStripWorker.h
edm::DataMixingModule::beginRun
void beginRun(edm::Run const &run, edm::EventSetup const &eventSetup) override
Definition: DataMixingModule.cc:248
edm::DataMixingEMDigiWorker
Definition: DataMixingEMDigiWorker.h:40
DataMixingHcalWorker.h
edm::EventPrincipal
Definition: EventPrincipal.h:46
edm::DataMixingModule::CSCWireDigiCollectionDM_
std::string CSCWireDigiCollectionDM_
Definition: DataMixingModule.h:122
edm::DataMixingModule::RPCDigiCollectionDM_
std::string RPCDigiCollectionDM_
Definition: DataMixingModule.h:119
edm::DataMixingModule::ESPileInputTag_
edm::InputTag ESPileInputTag_
Definition: DataMixingModule.h:153
EventPrincipal.h
ProductID.h
edm::DataMixingSiStripWorker
Definition: DataMixingSiStripWorker.h:36
DataMixingMuonWorker.h
edm::DataMixingHcalDigiWorker
Definition: DataMixingHcalDigiWorker.h:40
DataMixingPileupCopy.h
edm::DataMixingModule::HORecHitCollectionDM_
std::string HORecHitCollectionDM_
Definition: DataMixingModule.h:95
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::DataMixingModule::ZDCDigiCollectionDM_
std::string ZDCDigiCollectionDM_
Definition: DataMixingModule.h:109
edm::DataMixingModule::MuonWorker_
DataMixingMuonWorker * MuonWorker_
Definition: DataMixingModule.h:175
edm::DataMixingModule::SiStripRawWorker_
DataMixingSiStripRawWorker * SiStripRawWorker_
Definition: DataMixingModule.h:180
edm::DataMixingModule::EBPileInputTag_
edm::InputTag EBPileInputTag_
Definition: DataMixingModule.h:151
edm::DataMixingModule::EEDigiCollectionDM_
std::string EEDigiCollectionDM_
Definition: DataMixingModule.h:85
edm::DataMixingModule::SiPixelWorker_
DataMixingSiPixelWorker * SiPixelWorker_
Definition: DataMixingModule.h:186
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
edm::DataMixingHcalWorker
Definition: DataMixingHcalWorker.h:33
edm::DataMixingModule::EEPileInputTag_
edm::InputTag EEPileInputTag_
Definition: DataMixingModule.h:152
edm::DataMixingModule::HBHEDigiCollectionDM_
std::string HBHEDigiCollectionDM_
Definition: DataMixingModule.h:103
edm::MixingCache::Config
Definition: BMixingModule.h:29
edm::DataMixingModule::HOPileInputTag_
edm::InputTag HOPileInputTag_
Definition: DataMixingModule.h:155
edm::DataMixingSiStripRawWorker
Definition: DataMixingSiStripRawWorker.h:37
edm::DataMixingModule::MergePileup_
bool MergePileup_
Definition: DataMixingModule.h:170
edm::DataMixingModule::EMWorker_
DataMixingEMWorker * EMWorker_
Definition: DataMixingModule.h:140
edm::DataMixingModule::ESRecHitCollectionDM_
std::string ESRecHitCollectionDM_
Definition: DataMixingModule.h:79
edm::DataMixingModule::HBHEPileInputTag_
edm::InputTag HBHEPileInputTag_
Definition: DataMixingModule.h:154
edm::EventSetup
Definition: EventSetup.h:58
edm::DataMixingModule::MergeHcalDigis_
bool MergeHcalDigis_
Definition: DataMixingModule.h:167
edm::DataMixingModule::EBRecHitCollectionDM_
std::string EBRecHitCollectionDM_
Definition: DataMixingModule.h:75
DataMixingEMWorker.h
edm::DataMixingModule::CSCComparatorDigiCollectionDM_
std::string CSCComparatorDigiCollectionDM_
Definition: DataMixingModule.h:124
alignCSCRings.r
r
Definition: alignCSCRings.py:93
edm::DataMixingModule::createnewEDProduct
void createnewEDProduct() override
Definition: DataMixingModule.h:55
edm::DataMixingModule::getSubdetectorNames
virtual void getSubdetectorNames()
Definition: DataMixingModule.cc:204
edm::DataMixingModule::PUWorker_
DataMixingPileupCopy * PUWorker_
Definition: DataMixingModule.h:138
edm::DataMixingModule::HcalDigiWorkerProd_
DataMixingHcalDigiWorkerProd * HcalDigiWorkerProd_
Definition: DataMixingModule.h:148
edm::DataMixingModule::~DataMixingModule
~DataMixingModule() override
Definition: DataMixingModule.cc:253
edm::DataMixingModule::tok_hf_
edm::EDGetTokenT< HFDigitizerTraits::DigiCollection > tok_hf_
Definition: DataMixingModule.h:162
edm::DataMixingModule::EERecHitCollectionDM_
std::string EERecHitCollectionDM_
Definition: DataMixingModule.h:77
edm::DataMixingModule::QIE11DigiCollectionDM_
std::string QIE11DigiCollectionDM_
Definition: DataMixingModule.h:113
edm::DataMixingEMWorker
Definition: DataMixingEMWorker.h:37
writedatasetfile.run
run
Definition: writedatasetfile.py:27
edm::DataMixingModule::DTDigiCollectionDM_
std::string DTDigiCollectionDM_
Definition: DataMixingModule.h:118
edm::DataMixingModule::HFRecHitCollectionDM_
std::string HFRecHitCollectionDM_
Definition: DataMixingModule.h:97
edm::DataMixingModule::EMDigiWorker_
DataMixingEMDigiWorker * EMDigiWorker_
Definition: DataMixingModule.h:141
edm::DataMixingModule::Subdetectors_
std::vector< std::string > Subdetectors_
Definition: DataMixingModule.h:191
edm::DataMixingModule::HFPileInputTag_
edm::InputTag HFPileInputTag_
Definition: DataMixingModule.h:156
edm::DataMixingModule::endLuminosityBlock
void endLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override
Definition: DataMixingModule.cc:465
edm::DataMixingModule::tok_hbhe_
edm::EDGetTokenT< HBHEDigitizerTraits::DigiCollection > tok_hbhe_
Definition: DataMixingModule.h:160
edm::DataMixingModule::label_
std::string label_
Definition: DataMixingModule.h:195
DataMixingHcalDigiWorkerProd.h
edm::DataMixingModule::ESDigiCollectionDM_
std::string ESDigiCollectionDM_
Definition: DataMixingModule.h:87
edm::DataMixingModule::put
void put(edm::Event &e, const edm::EventSetup &ES) override
Definition: DataMixingModule.cc:417
DataMixingSiPixelWorker.h
edm::DataMixingModule::initializeEvent
void initializeEvent(edm::Event const &e, edm::EventSetup const &eventSetup) override
Definition: DataMixingModule.cc:246
edm::DataMixingModule::tok_qie10_
edm::EDGetTokenT< HcalQIE10DigitizerTraits::DigiCollection > tok_qie10_
Definition: DataMixingModule.h:164
DataMixingSiStripRawWorker.h
edm::DataMixingModule::tok_qie11_
edm::EDGetTokenT< HcalQIE11DigitizerTraits::DigiCollection > tok_qie11_
Definition: DataMixingModule.h:165
edm::DataMixingPileupCopy
Definition: DataMixingPileupCopy.h:40
DataMixingHcalDigiWorker.h
edm::DataMixingModule::HcalWorker_
DataMixingHcalWorker * HcalWorker_
Definition: DataMixingModule.h:146
ParameterSet.h
edm::DataMixingModule::HFDigiCollectionDM_
std::string HFDigiCollectionDM_
Definition: DataMixingModule.h:107
edm::DataMixingModule::addSignals
void addSignals(const edm::Event &e, const edm::EventSetup &ES) override
Definition: DataMixingModule.cc:280
edm::DataMixingModule
Definition: DataMixingModule.h:45
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
edm::DataMixingModule::DataMixingModule
DataMixingModule(const edm::ParameterSet &ps, MixingCache::Config const *globalConf)
Definition: DataMixingModule.cc:31
edm::DataMixingModule::pileWorker
bool pileWorker(const edm::EventPrincipal &, int bcr, int EventId, const edm::EventSetup &ES, ModuleCallingContext const *)
Definition: DataMixingModule.cc:317
edm::Event
Definition: Event.h:73
edm::DataMixingModule::ZDCPileInputTag_
edm::InputTag ZDCPileInputTag_
Definition: DataMixingModule.h:157
BMixingModule.h
edm::DataMixingModule::SiStripWorker_
DataMixingSiStripWorker * SiStripWorker_
Definition: DataMixingModule.h:179
edm::DataMixingModule::HBHERecHitCollectionDM_
std::string HBHERecHitCollectionDM_
Definition: DataMixingModule.h:93
edm::InputTag
Definition: InputTag.h:15
DataMixingEMDigiWorker.h
edm::DataMixingModule::EBDigiCollectionDM_
std::string EBDigiCollectionDM_
Definition: DataMixingModule.h:83
edm::DataMixingMuonWorker
Definition: DataMixingMuonWorker.h:41
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
edm::ModuleCallingContext
Definition: ModuleCallingContext.h:29