CMS 3D CMS Logo

HcalDigiProducer.cc
Go to the documentation of this file.
7 
10  theDigitizer_(pset, iC) {
11  mixMod.produces<HBHEDigiCollection>();
12  mixMod.produces<HODigiCollection>();
13  mixMod.produces<HFDigiCollection>();
14  mixMod.produces<ZDCDigiCollection>();
15  mixMod.produces<QIE10DigiCollection>("HFQIE10DigiCollection");
16  mixMod.produces<QIE11DigiCollection>("HBHEQIE11DigiCollection");
17  if(pset.getParameter<bool>("debugCaloSamples")){
18  mixMod.produces<CaloSamplesCollection>("HcalSamples");
19  }
20  if(pset.getParameter<bool>("injectTestHits")){
21  mixMod.produces<edm::PCaloHitContainer>("HcalHits");
22  }
23 }
24 
25 
28  theDigitizer_(pset, iC) {
29 }
30 
31 
32 void
34  theDigitizer_.initializeEvent(event, es);
35 }
36 
37 void
39  theDigitizer_.finalizeEvent(event, es, randomEngine(event.streamID()));
40 }
41 
42 void
44  theDigitizer_.accumulate(event, es, randomEngine(event.streamID()));
45 }
46 
47 void
49  theDigitizer_.accumulate(event, es, randomEngine(streamID));
50 }
51 
52 void
55 }
56 
57 void
60 }
61 
62 void
65 }
66 
67 void
70 }
71 
72 void
75 }
76 
77 void
80 }
81 
82 void
85 }
86 
87 void
90 }
91 
92 CLHEP::HepRandomEngine* HcalDigiProducer::randomEngine(edm::StreamID const& streamID) {
93  unsigned int index = streamID.value();
94  if(index >= randomEngines_.size()) {
95  randomEngines_.resize(index + 1, nullptr);
96  }
97  CLHEP::HepRandomEngine* ptr = randomEngines_[index];
98  if(!ptr) {
100  ptr = &rng->getEngine(streamID);
101  randomEngines_[index] = ptr;
102  }
103  return ptr;
104 }
T getParameter(std::string const &) const
HcalDigiProducer(edm::ParameterSet const &pset, edm::stream::EDProducerBase &mixMod, edm::ConsumesCollector &iC)
std::vector< PCaloHit > PCaloHitContainer
void accumulate(edm::Event const &, edm::EventSetup const &) override
void setQIE10NoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
std::vector< CaloSamples > CaloSamplesCollection
Definition: CaloSamples.h:86
CLHEP::HepRandomEngine * randomEngine(edm::StreamID const &streamID)
void setQIE10NoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void endRun(edm::Run const &, edm::EventSetup const &) override
void setQIE11NoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
std::vector< CLHEP::HepRandomEngine * > randomEngines_
virtual CLHEP::HepRandomEngine & getEngine(StreamID const &)=0
Use this engine in event methods.
void initializeEvent(edm::Event const &e, edm::EventSetup const &c)
void accumulate(edm::Event const &e, edm::EventSetup const &c, CLHEP::HepRandomEngine *)
void setQIE11NoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void finalizeEvent(edm::Event &, edm::EventSetup const &) override
void setHFNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void initializeEvent(edm::Event const &, edm::EventSetup const &) override
unsigned int value() const
Definition: StreamID.h:46
void beginRun(const edm::EventSetup &es)
void setZDCNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void setZDCNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void beginRun(edm::Run const &, edm::EventSetup const &) override
StreamID streamID() const
Definition: Event.h:86
HcalDigitizer theDigitizer_
void setHONoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void setHFNoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void setHBHENoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
void setHBHENoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)
Definition: event.py:1
Definition: Run.h:43
void finalizeEvent(edm::Event &e, edm::EventSetup const &c, CLHEP::HepRandomEngine *)
void setHONoiseSignalGenerator(HcalBaseSignalGenerator *noiseGenerator)