fire v0.19.0
Framework for sImulation and Reconstruction of Events
framework::Producer Class Referenceabstract

Legacy producer class. More...

#include <EventProcessor.h>

Inheritance diagram for framework::Producer:
[legend]
Collaboration diagram for framework::Producer:
[legend]

Public Member Functions

 Producer (const std::string &name, framework::Process &p)
 Pass construction to base legacy processor. More...
 
virtual void produce (framework::Event &event)=0
 Pure virtual produce function to align with legacy implementation. More...
 
virtual void process (fire::Event &event) final override
 Final implementation of pure virtual process method, wrapping event in framework::Event and giving it to produce method. More...
 
- Public Member Functions inherited from framework::EventProcessor
 EventProcessor (const std::string &name, framework::Process &p)
 Construct a legacy event processor. More...
 
virtual void configure (config::Parameters &ps)
 Legacy configure method. More...
 
- Public Member Functions inherited from fire::Processor
 Processor (const config::Parameters &ps)
 Configure the processor upon construction. More...
 
virtual ~Processor ()=default
 virtual default destructor so derived classes can be destructed
 
virtual void beforeNewRun (RunHeader &header)
 Handle allowing processors to modify run headers before the run begins. More...
 
virtual void onNewRun (const RunHeader &runHeader)
 Callback for the Processor to take any necessary action when the run being processed changes. More...
 
virtual void onFileOpen (const std::string &file_name)
 Callback for the Processor to take any necessary action when a new input event file is opened. More...
 
virtual void onFileClose (const std::string &file_name)
 Callback for the Processor to take any necessary action when a event input file is closed. More...
 
virtual void onProcessStart ()
 Callback for the Processor to take any necessary action when the processing of events starts.
 
virtual void onProcessEnd ()
 Callback for the Processor to take any necessary action when the processing of events finishes, such as calculating job-summary quantities.
 
const std::stringgetName () const
 Get the processor name.
 
virtual void attach (Process *p) final
 Attach the current process to this processor. More...
 
template<class T >
const T & getCondition (const std::string &condition_name)
 Access a conditions object for the current event. More...
 

Additional Inherited Members

- Protected Member Functions inherited from fire::Processor
void setStorageHint (StorageControl::Hint hint, const std::string &purpose="") const
 Mark the current event as having the given storage control hint from this processor and the given purpose string. More...
 
void abortEvent ()
 Abort the event immediately. More...
 
void fatalError (const std::string &msg)
 End processing due to a fatal runtime error. More...
 
- Protected Attributes inherited from fire::Processor
logging::logger theLog_
 The logger for this Processor. More...
 

Detailed Description

Legacy producer class.

Deprecated:
This class is meant to be used only in the transitory phase where legacy processors are still supported. This class will be dropped when legacy processors are dropped.

Constructor & Destructor Documentation

◆ Producer()

framework::Producer::Producer ( const std::string name,
framework::Process p 
)
inline

Pass construction to base legacy processor.

Parameters
[in]nameName of this processor
[in]phandle to current process

Member Function Documentation

◆ process()

virtual void framework::Producer::process ( fire::Event event)
inlinefinaloverridevirtual

Final implementation of pure virtual process method, wrapping event in framework::Event and giving it to produce method.

Parameters
[in]eventcurrent event bus for legacy processor

Implements framework::EventProcessor.

◆ produce()

virtual void framework::Producer::produce ( framework::Event event)
pure virtual

Pure virtual produce function to align with legacy implementation.

Parameters
[in]eventlegacy event bus for legacy processor

The documentation for this class was generated from the following file: