All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IAlgorithm Class Referenceabstract

The IAlgorithm is the interface implemented by the Algorithm base class. More...

#include <GaudiKernel/IAlgorithm.h>

Inheritance diagram for IAlgorithm:
Collaboration diagram for IAlgorithm:

Public Member Functions

 DeclareInterfaceID (IAlgorithm, 4, 0)
 InterfaceID. More...
 
virtual const std::string & version () const =0
 The version of the algorithm. More...
 
virtual StatusCode execute ()=0
 The action to be performed by the algorithm on an event. More...
 
virtual bool isInitialized () const =0
 check if the algorithm is initialized properly More...
 
virtual bool isFinalized () const =0
 check if the algorithm is finalized properly More...
 
virtual bool isExecuted () const =0
 check if the algorithm is already executed for the current event More...
 
virtual StatusCode configure ()=0
 Configuration (from OFFLINE to CONFIGURED). More...
 
virtual StatusCode initialize ()=0
 Initialization (from CONFIGURED to INITIALIZED). More...
 
virtual StatusCode start ()=0
 Start (from INITIALIZED to RUNNING). More...
 
virtual StatusCode stop ()=0
 Stop (from RUNNING to INITIALIZED). More...
 
virtual StatusCode finalize ()=0
 Finalize (from INITIALIZED to CONFIGURED). More...
 
virtual StatusCode terminate ()=0
 Initialization (from CONFIGURED to OFFLINE). More...
 
virtual StatusCode reinitialize ()=0
 Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED). More...
 
virtual StatusCode restart ()=0
 Initialization (from RUNNING to RUNNING, via INITIALIZED). More...
 
virtual Gaudi::StateMachine::State FSMState () const =0
 Get the current state. More...
 
virtual StatusCode sysInitialize ()=0
 Initialization method invoked by the framework. More...
 
virtual StatusCode sysStart ()=0
 Startup method invoked by the framework. More...
 
virtual StatusCode sysReinitialize ()=0
 Re-initialization method invoked by the framework. More...
 
virtual StatusCode sysRestart ()=0
 Re-start method invoked by the framework. More...
 
virtual StatusCode sysExecute ()=0
 System execution. This method invokes the execute() method of a concrete algorithm. More...
 
virtual StatusCode sysStop ()=0
 System stop. More...
 
virtual StatusCode sysFinalize ()=0
 System finalization. More...
 
virtual StatusCode sysBeginRun ()=0
 beginRun method invoked by the framework. More...
 
virtual StatusCode sysEndRun ()=0
 endRun method invoked by the framework. More...
 
virtual void resetExecuted ()=0
 Reset the Algorithm executed state for the current event. More...
 
virtual StatusCode beginRun ()=0
 Algorithm begin run. More...
 
virtual StatusCode endRun ()=0
 Algorithm end run. More...
 
virtual void setExecuted (bool state)=0
 Set the executed flag to the specified state. More...
 
virtual bool isEnabled () const =0
 Is this algorithm enabled or disabled? More...
 
virtual bool filterPassed () const =0
 Did this algorithm pass or fail its filter criterion for the last event? More...
 
virtual void setFilterPassed (bool state)=0
 Set the filter passed flag to the specified state. More...
 
- Public Member Functions inherited from INamedInterface
 DeclareInterfaceID (INamedInterface, 1, 0)
 InterfaceID. More...
 
virtual const std::string & name () const =0
 Retrieve the name of the instance. More...
 
virtual ~INamedInterface ()
 Virtual destructor (always needed for abstract classes). More...
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function More...
 
virtual std::vector< std::string > getInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release ()=0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()
 Virtual destructor. More...
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
 Return status. More...
 
typedef Gaudi::InterfaceId
< IInterface, 0, 0 > 
iid
 Interface ID. More...
 
typedef mpl::set1< iidext_iids
 Extra interfaces. More...
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. More...
 

Detailed Description

The IAlgorithm is the interface implemented by the Algorithm base class.

Concrete algorithms, derived from the Algorithm base class are controlled via this interface.

Author
Paul Maley
D.Quarrie
Marco Clemencic

Definition at line 20 of file IAlgorithm.h.

Member Function Documentation

virtual StatusCode IAlgorithm::beginRun ( )
pure virtual

Algorithm begin run.

This method is called at the beginning of the event loop.

Implemented in Algorithm, Sequencer, GaudiPython::PyAlgorithm, GaudiSequencer, and HelloWorld.

virtual StatusCode IAlgorithm::configure ( )
pure virtual

Configuration (from OFFLINE to CONFIGURED).

Implemented in Algorithm.

IAlgorithm::DeclareInterfaceID ( IAlgorithm  ,
,
 
)
virtual StatusCode IAlgorithm::endRun ( )
pure virtual

Algorithm end run.

This method is called at the end of the event loop.

Implemented in Algorithm, Sequencer, GaudiPython::PyAlgorithm, GaudiSequencer, and HelloWorld.

virtual StatusCode IAlgorithm::execute ( )
pure virtual
virtual bool IAlgorithm::filterPassed ( ) const
pure virtual

Did this algorithm pass or fail its filter criterion for the last event?

Implemented in Algorithm.

virtual Gaudi::StateMachine::State IAlgorithm::FSMState ( ) const
pure virtual

Get the current state.

Implemented in Algorithm.

virtual bool IAlgorithm::isEnabled ( ) const
pure virtual

Is this algorithm enabled or disabled?

Implemented in Algorithm.

virtual bool IAlgorithm::isExecuted ( ) const
pure virtual

check if the algorithm is already executed for the current event

Implemented in Algorithm.

virtual bool IAlgorithm::isFinalized ( ) const
pure virtual

check if the algorithm is finalized properly

Implemented in Algorithm.

virtual bool IAlgorithm::isInitialized ( ) const
pure virtual

check if the algorithm is initialized properly

Implemented in Algorithm.

virtual StatusCode IAlgorithm::reinitialize ( )
pure virtual

Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).

Implemented in Algorithm, and Sequencer.

virtual void IAlgorithm::resetExecuted ( )
pure virtual

Reset the Algorithm executed state for the current event.

Implemented in Algorithm, Sequencer, and GaudiSequencer.

virtual StatusCode IAlgorithm::restart ( )
pure virtual

Initialization (from RUNNING to RUNNING, via INITIALIZED).

Implemented in Algorithm.

virtual void IAlgorithm::setExecuted ( bool  state)
pure virtual

Set the executed flag to the specified state.

Implemented in Algorithm.

virtual void IAlgorithm::setFilterPassed ( bool  state)
pure virtual

Set the filter passed flag to the specified state.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::start ( )
pure virtual

Start (from INITIALIZED to RUNNING).

Implemented in Algorithm, Sequencer, GaudiPython::PyAlgorithm, and ReplayOutputStream.

virtual StatusCode IAlgorithm::stop ( )
pure virtual

Stop (from RUNNING to INITIALIZED).

Implemented in Algorithm, Sequencer, GaudiPython::PyAlgorithm, and ReplayOutputStream.

virtual StatusCode IAlgorithm::sysBeginRun ( )
pure virtual

beginRun method invoked by the framework.

This method is responsible for any beginRun actions required by the framework itself. It will in turn invoke the beginRun() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysEndRun ( )
pure virtual

endRun method invoked by the framework.

This method is responsible for any endRun actions required by the framework itself. It will in turn invoke the endRun() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysExecute ( )
pure virtual

System execution. This method invokes the execute() method of a concrete algorithm.

Implemented in GaudiAlgorithm, and Algorithm.

virtual StatusCode IAlgorithm::sysFinalize ( )
pure virtual

System finalization.

This method invokes the finalize() method of a concrete algorithm and the finalize() methods of all of that algorithm's sub algorithms.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysInitialize ( )
pure virtual

Initialization method invoked by the framework.

This method is responsible for any bookkeeping of initialization required by the framework itself. It will in turn invoke the initialize() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysReinitialize ( )
pure virtual

Re-initialization method invoked by the framework.

This method is responsible for any re-initialization required by the framework itself. It will in turn invoke the reinitialize() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysRestart ( )
pure virtual

Re-start method invoked by the framework.

This method is responsible for any re-start required by the framework itself. It will in turn invoke the restart() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysStart ( )
pure virtual

Startup method invoked by the framework.

This method is responsible for any bookkeeping of initialization required by the framework itself. It will in turn invoke the start() method of the derived algorithm, and of any sub-algorithms which it creates.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::sysStop ( )
pure virtual

System stop.

This method invokes the stop() method of a concrete algorithm and the stop() methods of all of that algorithm's sub algorithms.

Implemented in Algorithm.

virtual StatusCode IAlgorithm::terminate ( )
pure virtual

Initialization (from CONFIGURED to OFFLINE).

Implemented in Algorithm.

virtual const std::string& IAlgorithm::version ( ) const
pure virtual

The version of the algorithm.

Implemented in Algorithm.


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