CMS 3D CMS Logo

FTLDigiProducer.h
Go to the documentation of this file.
1 #ifndef SimFastTiming_FastTimingCommon_FTLDigiProducer_h
2 #define SimFastTiming_FastTimingCommon_FTLDigiProducer_h
3 
6 
7 #include <memory>
8 #include <vector>
9 
10 namespace edm {
11  class ConsumesCollector;
12  class ProducerBase;
13  class ParameterSet;
14  class StreamID;
15 }
16 
17 namespace CLHEP {
18  class HepRandomEngine;
19 }
20 
22 public:
25  {
26  throw cms::Exception("DeprecatedConstructor") << "Please make sure you're calling this with the threaded mixing module...";
27  }
28 
29  void initializeEvent(edm::Event const&, edm::EventSetup const&) override;
30  void finalizeEvent(edm::Event&, edm::EventSetup const&) override;
31  void accumulate(edm::Event const&, edm::EventSetup const&) override;
32  void accumulate(PileUpEventPrincipal const&, edm::EventSetup const&, edm::StreamID const&) override;
33  void beginRun(edm::Run const&, edm::EventSetup const&) override;
34  void endRun(edm::Run const&, edm::EventSetup const&) override;
35  ~FTLDigiProducer() override;
36 private:
37  CLHEP::HepRandomEngine* randomEngine(edm::StreamID const& streamID);
38  //the digitizer
39  std::vector<std::unique_ptr<FTLDigitizerBase> > theDigitizers_;
40  std::vector<CLHEP::HepRandomEngine*> randomEngines_;
41 };
42 
46 
47 #endif
CLHEP::HepRandomEngine * randomEngine
Definition: Dummies.cc:7
FTLDigiProducer(edm::ParameterSet const &pset, edm::ConsumesCollector &iC)
std::vector< CLHEP::HepRandomEngine * > randomEngines_
std::vector< std::unique_ptr< FTLDigitizerBase > > theDigitizers_
HLT enums.
#define DEFINE_DIGI_ACCUMULATOR(type)
Definition: Run.h:43