| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IAlgorithm.h
Go to the documentation of this file.
1 // $Id: IAlgorithm.h,v 1.12 2008/10/17 13:06:04 marcocle Exp $
2 #ifndef GAUDIKERNEL_IALGORITHM_H
3 #define GAUDIKERNEL_IALGORITHM_H
4
5 // Include files
6 #include "GaudiKernel/INamedInterface.h"
7 #include "GaudiKernel/StateMachine.h"
8 #include <string>
9
20 class GAUDI_API IAlgorithm : virtual public INamedInterface {
21 public:
23 DeclareInterfaceID(IAlgorithm,4,0);
24
27 virtual const std::string& version() const = 0;
28
32 virtual StatusCode execute() = 0;
33
35 virtual bool isInitialized() const = 0;
37 virtual bool isFinalized() const = 0;
39 virtual bool isExecuted() const = 0;
40
41 // --- Methods from IStateful ---
44 virtual StatusCode configure() = 0;
45
48 virtual StatusCode initialize() = 0;
49
52 virtual StatusCode start() = 0;
53
56 virtual StatusCode stop() = 0;
57
60 virtual StatusCode finalize() = 0;
61
64 virtual StatusCode terminate() = 0;
65
68 virtual StatusCode reinitialize() = 0;
69
72 virtual StatusCode restart() = 0;
73
76 virtual Gaudi::StateMachine::State FSMState() const = 0;
77
83 virtual StatusCode sysInitialize() = 0;
84
90 virtual StatusCode sysStart() = 0;
91
97 virtual StatusCode sysReinitialize() = 0;
98
104 virtual StatusCode sysRestart() = 0;
105
107 virtual StatusCode sysExecute() = 0;
108
112 virtual StatusCode sysStop() = 0;
113
117 virtual StatusCode sysFinalize() = 0;
118
124 virtual StatusCode sysBeginRun( ) = 0;
125
131 virtual StatusCode sysEndRun( ) = 0;
132
134 virtual void resetExecuted( ) = 0;
135
138 virtual StatusCode beginRun() = 0;
141 virtual StatusCode endRun() = 0;
142
143
144 // ---- Function useful for dealing with sub-algorithms
146 virtual void setExecuted( bool state ) = 0;
147
149 virtual bool isEnabled( ) const = 0;
150
152 virtual bool filterPassed( ) const = 0;
153
155 virtual void setFilterPassed( bool state ) = 0;
156
157 };
158
159 #endif // GAUDIKERNEL_IALGORITHM_H