EDProducer.h
Go to the documentation of this file.
1 #ifndef art_Framework_Core_EDProducer_h
2 #define art_Framework_Core_EDProducer_h
3 // vim: set sw=2 expandtab :
4 
10 
11 #include <string>
12 
13 namespace art {
14 
16  public:
19 
20  explicit EDProducer(fhicl::ParameterSet const& pset)
21  : detail::Producer{pset}
22  , detail::LegacyModule{pset.get<std::string>("module_label")}
23  {}
24 
25  template <typename Config>
26  explicit EDProducer(Table<Config> const& config)
27  : EDProducer{config.get_PSet()}
28  {}
29 
33 
34  std::string workerType() const;
35 
36  private:
37  void setupQueues() override final;
38  void beginJobWithFrame(ProcessingFrame const&) override final;
39  void endJobWithFrame(ProcessingFrame const&) override final;
41  ProcessingFrame const&) override final;
43  FileBlock const&,
44  ProcessingFrame const&) override final;
46  FileBlock const&,
47  ProcessingFrame const&) override final;
49  FileBlock const&,
50  ProcessingFrame const&) override final;
51  void beginRunWithFrame(Run&, ProcessingFrame const&) override final;
52  void endRunWithFrame(Run&, ProcessingFrame const&) override final;
53  void beginSubRunWithFrame(SubRun&, ProcessingFrame const&) override final;
54  void endSubRunWithFrame(SubRun&, ProcessingFrame const&) override final;
55  void produceWithFrame(Event&, ProcessingFrame const&) override final;
56 
57  virtual void beginJob();
58  virtual void endJob();
59  virtual void respondToOpenInputFile(FileBlock const&);
60  virtual void respondToCloseInputFile(FileBlock const&);
61  virtual void respondToOpenOutputFiles(FileBlock const&);
62  virtual void respondToCloseOutputFiles(FileBlock const&);
63  virtual void beginRun(Run&);
64  virtual void endRun(Run&);
65  virtual void beginSubRun(SubRun&);
66  virtual void endSubRun(SubRun&);
67  virtual void produce(Event&) = 0;
68  };
69 
70 } // namespace art
71 
72 #endif /* art_Framework_Core_EDProducer_h */
73 
74 // Local Variables:
75 // mode: c++
76 // End:
void respondToCloseInputFileWithFrame(FileBlock const &, ProcessingFrame const &) override final
virtual void beginJob()
void respondToOpenInputFileWithFrame(FileBlock const &, ProcessingFrame const &) override final
void setupQueues() override final
virtual void endRun(Run &)
EDProducer(fhicl::ParameterSet const &pset)
Definition: EDProducer.h:20
virtual void endSubRun(SubRun &)
virtual void respondToCloseInputFile(FileBlock const &)
void beginRunWithFrame(Run &, ProcessingFrame const &) override final
Definition: config.py:1
std::string workerType() const
void endRunWithFrame(Run &, ProcessingFrame const &) override final
Definition: Run.h:21
virtual void beginSubRun(SubRun &)
void respondToOpenOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &) override final
virtual void beginRun(Run &)
base_engine_t & createEngine(seed_t seed)
ScheduleID scheduleID() const noexcept
virtual void endJob()
Producer(fhicl::ParameterSet const &)
virtual void respondToCloseOutputFiles(FileBlock const &)
virtual void respondToOpenOutputFiles(FileBlock const &)
auto const & get_PSet() const
Definition: ProducerTable.h:47
void respondToCloseOutputFilesWithFrame(FileBlock const &, ProcessingFrame const &) override final
void endSubRunWithFrame(SubRun &, ProcessingFrame const &) override final
void beginSubRunWithFrame(SubRun &, ProcessingFrame const &) override final
Service to store calibration data products (CDP) in the SQLite3 metadatabase of a file...
Definition: FillParentInfo.h:8
virtual void respondToOpenInputFile(FileBlock const &)
void produceWithFrame(Event &, ProcessingFrame const &) override final
virtual void produce(Event &)=0
void endJobWithFrame(ProcessingFrame const &) override final
void beginJobWithFrame(ProcessingFrame const &) override final
hep::concurrency::SerialTaskQueueChain * serialTaskQueueChain() const
EDProducer(Table< Config > const &config)
Definition: EDProducer.h:26
enum BeamMode string