Gaudi Framework, version v23r2

Home   Generated: Thu Jun 28 2012

IAlgorithm.h

Go to the documentation of this file.
00001 // $Id: IAlgorithm.h,v 1.12 2008/10/17 13:06:04 marcocle Exp $
00002 #ifndef GAUDIKERNEL_IALGORITHM_H
00003 #define GAUDIKERNEL_IALGORITHM_H
00004 
00005 // Include files
00006 #include "GaudiKernel/INamedInterface.h"
00007 #include "GaudiKernel/StateMachine.h"
00008 #include <string>
00009 
00020 class GAUDI_API IAlgorithm : virtual public INamedInterface {
00021 public:
00023   DeclareInterfaceID(IAlgorithm,4,0);
00024 
00027   virtual const std::string& version() const = 0;
00028 
00032   virtual StatusCode execute() = 0;
00033 
00035   virtual bool isInitialized() const = 0;
00037   virtual bool isFinalized() const = 0;
00039   virtual bool isExecuted() const = 0;
00040 
00041   // --- Methods from IStateful ---
00044   virtual StatusCode configure() = 0;
00045 
00048   virtual StatusCode initialize() = 0;
00049 
00052   virtual StatusCode start() = 0;
00053 
00056   virtual StatusCode stop() = 0;
00057 
00060   virtual StatusCode finalize() = 0;
00061 
00064   virtual StatusCode terminate() = 0;
00065 
00068   virtual StatusCode reinitialize() = 0;
00069 
00072   virtual StatusCode restart() = 0;
00073 
00076   virtual Gaudi::StateMachine::State FSMState() const = 0;
00077 
00083   virtual StatusCode sysInitialize() = 0;
00084 
00090   virtual StatusCode sysStart() = 0;
00091 
00097   virtual StatusCode sysReinitialize() = 0;
00098 
00104   virtual StatusCode sysRestart() = 0;
00105 
00107   virtual StatusCode sysExecute() = 0;
00108 
00112   virtual StatusCode sysStop() = 0;
00113 
00117   virtual StatusCode sysFinalize() = 0;
00118 
00124   virtual StatusCode sysBeginRun( ) = 0;
00125 
00131   virtual StatusCode sysEndRun( ) = 0;
00132 
00134   virtual void resetExecuted( ) = 0;
00135 
00138   virtual StatusCode beginRun() = 0;
00141   virtual StatusCode endRun() = 0;
00142 
00143 
00144   // ---- Function useful for dealing with sub-algorithms
00146   virtual void setExecuted( bool state ) = 0;
00147 
00149   virtual bool isEnabled( ) const = 0;
00150 
00152   virtual bool filterPassed( ) const = 0;
00153 
00155   virtual void setFilterPassed( bool state ) = 0;
00156 
00157 };
00158 
00159 #endif // GAUDIKERNEL_IALGORITHM_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Thu Jun 28 2012 23:27:19 for Gaudi Framework, version v23r2 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004