33 EBPileInputTag_(ps.getParameter<edm::
InputTag>(
"EBPileInputTag")),
34 EEPileInputTag_(ps.getParameter<edm::
InputTag>(
"EEPileInputTag")),
35 ESPileInputTag_(ps.getParameter<edm::
InputTag>(
"ESPileInputTag")),
36 HBHEPileInputTag_(ps.getParameter<edm::
InputTag>(
"HBHEPileInputTag")),
37 HOPileInputTag_(ps.getParameter<edm::
InputTag>(
"HOPileInputTag")),
38 HFPileInputTag_(ps.getParameter<edm::
InputTag>(
"HFPileInputTag")),
39 ZDCPileInputTag_(ps.getParameter<edm::
InputTag>(
"ZDCPileInputTag")),
40 QIE10PileInputTag_(ps.getParameter<edm::
InputTag>(
"QIE10PileInputTag")),
41 QIE11PileInputTag_(ps.getParameter<edm::
InputTag>(
"QIE11PileInputTag")),
43 label_(ps.getParameter<std::
string>(
"Label")) {
107 produces<HBHEDigiCollection>();
108 produces<HODigiCollection>();
109 produces<HFDigiCollection>();
110 produces<ZDCDigiCollection>();
112 produces<QIE10DigiCollection>(
"HFQIE10DigiCollection");
113 produces<QIE11DigiCollection>(
"HBHEQIE11DigiCollection");
116 produces<CaloSamplesCollection>(
"HcalSamples");
119 produces<edm::PCaloHitContainer>(
"HcalHits");
149 produces<DTDigiCollection>();
150 produces<RPCDigiCollection>();
190 produces<std::vector<PileupSummaryInfo>>();
191 produces<int>(
"bunchSpacing");
192 produces<CrossingFramePlaybackInfoNew>();
194 std::vector<edm::InputTag> GenPUProtonsInputTags;
195 GenPUProtonsInputTags = ps.
getParameter<std::vector<edm::InputTag>>(
"GenPUProtonsInputTags");
196 for (std::vector<edm::InputTag>::const_iterator it_InputTag = GenPUProtonsInputTags.begin();
197 it_InputTag != GenPUProtonsInputTags.end();
199 produces<std::vector<reco::GenParticle>>(it_InputTag->label());
284 LogDebug(
"DataMixingModule") <<
"===============> adding MC signals for " << e.
id();
325 LogDebug(
"DataMixingModule") <<
"\n===============> adding pileups from event " << ep.
id() <<
" for bunchcrossing "
382 using namespace std::placeholders;
384 std::vector<edm::SecondaryEventIDAndFileInfo> recordEventID;
385 std::vector<int> PileupList;
392 for (
unsigned int isource = 0; isource <
maxNbSources_; ++isource) {
394 if (!source || !(source->doPileUp(bunchCrossing)))
400 int NumPU_Events = 0;
402 NumPU_Events = PileupList[bunchCrossing -
minBunch_];
423 std::vector<PileupSummaryInfo> ps;
424 int bunchSpacing = 10000;
void doPileUp(edm::Event &e, const edm::EventSetup &ES) override
edm::EDGetTokenT< HcalQIE11DigitizerTraits::DigiCollection > tok_qie11_
void addMuonSignals(const edm::Event &e)
void beginRun(const edm::Run &r, const edm::EventSetup &setup) override
std::string HFDigiCollectionDM_
void addHcalSignals(const edm::Event &e, const edm::EventSetup &ES)
const edm::EventSetup & c
void putEM(edm::Event &e)
void endRun(const edm::Run &r, const edm::EventSetup &setup) override
void beginLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override
void addSiStripSignals(const edm::Event &e)
void addHcalSignals(const edm::Event &e)
static std::string const source("source")
std::string HBHERecHitCollectionDM_
edm::InputTag QIE11PileInputTag_
std::string ZDCRecHitCollectionDM_
void addMuonPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
void addEMSignals(const edm::Event &e)
void addHcalPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
std::string CSCStripDigiCollectionDM_
edm::InputTag QIE10PileInputTag_
void putPileupInfo(edm::Event &e)
EventID const & id() const
bool exists(std::string const ¶meterName) const
checks if a parameter exists
std::string SiStripDigiCollectionDM_
edm::EDGetTokenT< ZDCDigitizerTraits::DigiCollection > tok_zdc_
edm::EDGetTokenT< HODigitizerTraits::DigiCollection > tok_ho_
void addHcalPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, const edm::EventSetup &ES, ModuleCallingContext const *)
void addSiPixelPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
void addEMPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, const edm::EventSetup &ES, ModuleCallingContext const *)
void endRun(const edm::Run &r, const edm::EventSetup &setup) override
std::string CSCWireDigiCollectionDM_
void putEM(edm::Event &e, const edm::EventSetup &ES)
std::string QIE10DigiCollectionDM_
DataMixingSiStripRawWorker * SiStripRawWorker_
void beginRun(edm::Run const &run, edm::EventSetup const &eventSetup) override
DataMixingSiPixelWorker * SiPixelWorker_
void addSiStripPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
ModuleCallingContext const * moduleCallingContext() const
std::string RPCDigiCollectionDM_
void putHcal(edm::Event &e, const edm::EventSetup &ES)
std::string ZDCDigiCollectionDM_
DataMixingHcalDigiWorker * HcalDigiWorker_
DataMixingEMWorker * EMWorker_
const edm::ESGetToken< HcalDbService, HcalDbRecord > tokDB_
static const unsigned int maxNbSources_
std::vector< float > TrueNumInteractions_
DataMixingPileupCopy * PUWorker_
void putSiPixel(edm::Event &e)
void addSiStripPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
std::string HORecHitCollectionDM_
void endLuminosityBlock(LuminosityBlock const &l1, EventSetup const &c) override
DataMixingMuonWorker * MuonWorker_
void putSiStrip(edm::Event &e)
virtual void getSubdetectorNames()
std::string EEDigiCollectionDM_
void addHcalPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, const edm::EventSetup &ES, edm::ModuleCallingContext const *)
edm::InputTag HBHEPileInputTag_
std::string HFRecHitCollectionDM_
edm::EDGetTokenT< HcalQIE10DigitizerTraits::DigiCollection > tok_qie10_
T getParameter(std::string const &) const
std::string HBHEDigiCollectionDM_
std::string EBRecHitCollectionDM_
std::string CSCComparatorDigiCollectionDM_
void addEMPileups(const int bcr, const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *)
edm::InputTag HOPileInputTag_
void putHcal(edm::Event &e, const edm::EventSetup &ES)
void putHcal(edm::Event &e)
bool pileWorker(const edm::EventPrincipal &, int bcr, int EventId, const edm::EventSetup &ES, ModuleCallingContext const *)
~DataMixingModule() override
DataMixingSiStripWorker * SiStripWorker_
std::string ESRecHitCollectionDM_
std::string EERecHitCollectionDM_
edm::EDGetTokenT< HFDigitizerTraits::DigiCollection > tok_hf_
std::vector< std::shared_ptr< PileUp > > inputSources_
std::string ESDigiCollectionDM_
void put(edm::Event &e, const edm::EventSetup &ES) override
std::string DTDigiCollectionDM_
void addSiStripSignals(const edm::Event &e)
void initializeEvent(edm::Event const &e, edm::EventSetup const &eventSetup) override
std::string EBDigiCollectionDM_
StreamID streamID() const
DataMixingHcalWorker * HcalWorker_
void getPileupInfo(std::vector< PileupSummaryInfo > &ps, int &bs)
edm::InputTag HFPileInputTag_
std::string HODigiCollectionDM_
std::string PixelDigiCollectionDM_
edm::EDGetTokenT< HBHEDigitizerTraits::DigiCollection > tok_hbhe_
DataMixingHcalDigiWorkerProd * HcalDigiWorkerProd_
void putMuon(edm::Event &e)
void beginLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &setup) override
std::string QIE11DigiCollectionDM_
void addPileupInfo(const edm::EventPrincipal *, unsigned int EventId, ModuleCallingContext const *mcc)
void addEMSignals(const edm::Event &e, const edm::EventSetup &ES)
void addHcalSignals(const edm::Event &e, const edm::EventSetup &ES)
void setupPileUpEvent(const edm::EventSetup &setup)
void addSignals(const edm::Event &e, const edm::EventSetup &ES) override
void endLuminosityBlock(const edm::LuminosityBlock &l, const edm::EventSetup &setup) override
DataMixingEMDigiWorker * EMDigiWorker_
void addSiPixelSignals(const edm::Event &e)
edm::InputTag ZDCPileInputTag_
void putSiStrip(edm::Event &e)