CMS 3D CMS Logo

OscarProducer.h
Go to the documentation of this file.
1 #ifndef SimG4Core_OscarProducer_H
2 #define SimG4Core_OscarProducer_H
3 
10 
13 
14 #include <memory>
15 
16 class OscarProducer : public edm::one::EDProducer<edm::one::SharedResources, edm::one::WatchRuns> {
17 public:
18  typedef std::vector<std::shared_ptr<SimProducer> > Producers;
19 
20  explicit OscarProducer(edm::ParameterSet const& p);
21  ~OscarProducer() override;
22  void beginRun(const edm::Run& r, const edm::EventSetup& c) override;
23  void endRun(const edm::Run& r, const edm::EventSetup& c) override;
24  void produce(edm::Event& e, const edm::EventSetup& c) override;
25 
26 private:
27  std::unique_ptr<RunManager> m_runManager;
28  Producers m_producers;
29  std::unique_ptr<CustomUIsession> m_UIsession;
30 };
31 
32 #endif
Producers m_producers
Definition: OscarProducer.h:28
std::unique_ptr< RunManager > m_runManager
Definition: OscarProducer.h:27
void endRun(const edm::Run &r, const edm::EventSetup &c) override
std::vector< std::shared_ptr< SimProducer > > Producers
Definition: OscarProducer.h:18
OscarProducer(edm::ParameterSet const &p)
void beginRun(const edm::Run &r, const edm::EventSetup &c) override
void produce(edm::Event &e, const edm::EventSetup &c) override
~OscarProducer() override
std::unique_ptr< CustomUIsession > m_UIsession
Definition: OscarProducer.h:29
Definition: Run.h:45