The Gaudi Framework
v26r4
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
IAlgorithm.h
Go to the documentation of this file.
1
#ifndef GAUDIKERNEL_IALGORITHM_H
2
#define GAUDIKERNEL_IALGORITHM_H
3
4
// Include files
5
#include "GaudiKernel/INamedInterface.h"
6
#include "GaudiKernel/IStateful.h"
7
#include <string>
8
19
class
GAUDI_API
IAlgorithm
:
virtual
public
extend_interfaces2
<INamedInterface, IStateful> {
20
public
:
22
DeclareInterfaceID
(
IAlgorithm
,5,0);
23
26
virtual
const
std::string& version()
const
= 0;
27
31
virtual
StatusCode
execute
() = 0;
32
34
virtual
bool
isInitialized()
const
= 0;
36
virtual
bool
isFinalized()
const
= 0;
38
virtual
bool
isExecuted()
const
= 0;
39
45
virtual
StatusCode
sysInitialize() = 0;
46
52
virtual
StatusCode
sysStart() = 0;
53
59
virtual
StatusCode
sysReinitialize() = 0;
60
66
virtual
StatusCode
sysRestart() = 0;
67
69
virtual
StatusCode
sysExecute() = 0;
70
74
virtual
StatusCode
sysStop() = 0;
75
79
virtual
StatusCode
sysFinalize() = 0;
80
86
virtual
StatusCode
sysBeginRun( ) = 0;
87
93
virtual
StatusCode
sysEndRun( ) = 0;
94
96
virtual
void
resetExecuted( ) = 0;
97
100
virtual
StatusCode
beginRun() = 0;
103
virtual
StatusCode
endRun() = 0;
104
105
106
// ---- Function useful for dealing with sub-algorithms
108
virtual
void
setExecuted(
bool
state
) = 0;
109
111
virtual
bool
isEnabled( )
const
= 0;
112
114
virtual
bool
filterPassed( )
const
= 0;
115
117
virtual
void
setFilterPassed(
bool
state
) = 0;
118
119
};
120
121
#endif // GAUDIKERNEL_IALGORITHM_H
GAUDI_API
#define GAUDI_API
Definition:
Kernel.h:107
AnalysisTest.execute
def execute()
Definition:
AnalysisTest.py:25
DeclareInterfaceID
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition:
IInterface.h:14
StatusCode
This class is used for returning status codes from appropriate routines.
Definition:
StatusCode.h:26
extend_interfaces
Base class to be used to extend an interface.
Definition:
extend_interfaces.h:11
IAlgorithm
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition:
IAlgorithm.h:19
compareRootHistos.state
tuple state
Definition:
compareRootHistos.py:269
GaudiKernel
GaudiKernel
IAlgorithm.h
Generated on Mon Oct 12 2015 16:26:48 for The Gaudi Framework by
1.8.9.1