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  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  throw cms::Exception("DeprecatedConstructor") << "Please make sure you're calling this with the threaded mixing module...";
29  }
30 
31  void initializeEvent(edm::Event const&, edm::EventSetup const&) override;
32  void finalizeEvent(edm::Event&, edm::EventSetup const&) override;
33  void accumulate(edm::Event const&, edm::EventSetup const&) override;
34  void accumulate(PileUpEventPrincipal const&, edm::EventSetup const&, edm::StreamID const&) override;
35  void beginRun(edm::Run const&, edm::EventSetup const&) override;
36  void endRun(edm::Run const&, edm::EventSetup const&) override;
37  ~FTLDigiProducer() override;
38 private:
39  CLHEP::HepRandomEngine* randomEngine(edm::StreamID const& streamID);
40  //the digitizer
41  std::vector<std::unique_ptr<FTLDigitizerBase> > theDigitizers_;
42  std::vector<CLHEP::HepRandomEngine*> randomEngines_;
43 };
44 
48 
49 #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