CMS 3D CMS Logo

HGCDigiProducer.h
Go to the documentation of this file.
1 #ifndef SimCalorimetry_HGCSimProducers_HGCDigiProducer_h
2 #define SimCalorimetry_HGCSimProducers_HGCDigiProducer_h
3 
6 
7 #include <memory>
8 #include <vector>
9 
10 namespace edm {
11  class ConsumesCollector;
12  namespace stream {
13  class EDProducerBase;
14  }
15  class ParameterSet;
16  class StreamID;
17 }
18 
19 namespace CLHEP {
20  class HepRandomEngine;
21 }
22 
24 public:
27 
28  void initializeEvent(edm::Event const&, edm::EventSetup const&) override;
29  void finalizeEvent(edm::Event&, edm::EventSetup const&) override;
30  void accumulate(edm::Event const&, edm::EventSetup const&) override;
31  void accumulate(PileUpEventPrincipal const&, edm::EventSetup const&, edm::StreamID const&) override;
32  void beginRun(edm::Run const&, edm::EventSetup const&) override;
33  void endRun(edm::Run const&, edm::EventSetup const&) override;
34  ~HGCDigiProducer() override;
35 private:
36  CLHEP::HepRandomEngine* randomEngine(edm::StreamID const& streamID);
37  //the digitizer
38  std::unique_ptr<HGCDigitizer> theDigitizer_;
39  std::vector<CLHEP::HepRandomEngine*> randomEngines_;
40 };
41 
42 #endif
CLHEP::HepRandomEngine * randomEngine
Definition: Dummies.cc:7
std::vector< CLHEP::HepRandomEngine * > randomEngines_
std::unique_ptr< HGCDigitizer > theDigitizer_
HLT enums.
Definition: Run.h:43