![]() |
The Gaudi Framework
v25r3
|
Base class from which all concrete algorithm classes should be derived. More...
#include <GaudiKernel/Algorithm.h>
Public Types | |
typedef Gaudi::PluginService::Factory2 < IAlgorithm *, const std::string &, ISvcLocator * > | Factory |
![]() | |
typedef implements3 | base_class |
Typedef to this class. More... | |
typedef extend_interfaces3 < IAlgorithm, IProperty, IStateful > | extend_interfaces_base |
Typedef to the base of this class. More... | |
typedef extend_interfaces_base::ext_iids | interfaces |
MPL set of all the implemented interfaces. More... | |
![]() | |
typedef mpl::fold< typename IAlgorithm::iid::iids::type, typename mpl::fold< typename IProperty::iid::iids::type, typename IStateful::iid::iids::type, mpl::insert< mpl::_1, mpl::_2 > >::type, mpl::insert< mpl::_1, mpl::_2 > >::type | ext_iids |
MPL set of interfaces extended by this one. More... | |
![]() | |
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< iid > | ext_iids |
Extra interfaces. More... | |
Public Member Functions | |
Algorithm (const std::string &name, ISvcLocator *svcloc, const std::string &version=PACKAGE_VERSION) | |
Constructor. More... | |
virtual | ~Algorithm () |
Destructor. More... | |
virtual StatusCode | sysStart () |
Reinitialization method invoked by the framework. More... | |
virtual StatusCode | sysInitialize () |
Initialization method invoked by the framework. More... | |
virtual StatusCode | sysReinitialize () |
Reinitialization method invoked by the framework. More... | |
virtual StatusCode | sysRestart () |
Restart method invoked by the framework. More... | |
virtual StatusCode | sysExecute () |
The actions to be performed by the algorithm on an event. More... | |
virtual StatusCode | sysStop () |
System stop. More... | |
virtual StatusCode | sysFinalize () |
System finalization. More... | |
virtual StatusCode | sysBeginRun () |
beginRun method invoked by the framework. More... | |
virtual StatusCode | sysEndRun () |
endRun method invoked by the framework. More... | |
virtual const std::string & | name () const |
The identifying name of the algorithm object. More... | |
virtual const std::string & | version () const |
The version of the algorithm. More... | |
virtual StatusCode | configure () |
Dummy implementation of IStateful::configure() method. More... | |
virtual StatusCode | terminate () |
Dummy implementation of IStateful::terminate() method. More... | |
virtual StatusCode | initialize () |
the default (empty) implementation of IStateful::initialize() method More... | |
virtual StatusCode | start () |
the default (empty) implementation of IStateful::start() method More... | |
virtual StatusCode | stop () |
the default (empty) implementation of IStateful::stop() method More... | |
virtual StatusCode | finalize () |
the default (empty) implementation of IStateful::finalize() method More... | |
virtual StatusCode | reinitialize () |
the default (empty) implementation of IStateful::reinitialize() method More... | |
virtual StatusCode | restart () |
the default (empty) implementation of IStateful::restart() method More... | |
virtual bool | isExecuted () const |
Has this algorithm been executed since the last reset? More... | |
virtual void | setExecuted (bool state) |
Set the executed flag to the specified state. More... | |
virtual void | resetExecuted () |
Reset the executed state of the Algorithm for the duration of the current event. More... | |
virtual StatusCode | beginRun () |
Algorithm begin run. More... | |
virtual StatusCode | endRun () |
Algorithm end run. This method is called at the end of the event loop. More... | |
virtual Gaudi::StateMachine::State | FSMState () const |
returns the current state of the algorithm More... | |
virtual Gaudi::StateMachine::State | targetFSMState () const |
returns the state the algorithm will be in after the ongoing transition More... | |
virtual bool | isEnabled () const |
Is this algorithm enabled or disabled? More... | |
virtual bool | filterPassed () const |
Did this algorithm pass or fail its filter criterion for the last event? More... | |
virtual void | setFilterPassed (bool state) |
Set the filter passed flag to the specified state. More... | |
template<class T > | |
StatusCode | service (const std::string &name, T *&psvc, bool createIf=true) const |
Access a service by name, creating it if it doesn't already exist. More... | |
template<class T > | |
StatusCode | service (const std::string &svcType, const std::string &svcName, T *&psvc) const |
Access a service by name and type, creating it if it doesn't already exist. More... | |
SmartIF< IService > | service (const std::string &name, const bool createIf=true, const bool quiet=false) const |
Return a pointer to the service identified by name (or "type/name") More... | |
void | setOutputLevel (int level) |
Set the output level for current algorithm. More... | |
SmartIF< IAuditorSvc > & | auditorSvc () const |
The standard auditor service.May not be invoked before sysInitialize() has been invoked. More... | |
SmartIF< IChronoStatSvc > & | chronoSvc () const |
The standard Chrono & Stat service, Return a pointer to the service if present. More... | |
SmartIF< IChronoStatSvc > & | chronoStatService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IDataProviderSvc > & | detSvc () const |
The standard detector data service. More... | |
SmartIF< IDataProviderSvc > & | detDataService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IConversionSvc > & | detCnvSvc () const |
The standard detector data persistency conversion service. More... | |
SmartIF< IConversionSvc > & | detDataCnvService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IDataProviderSvc > & | eventSvc () const |
The standard event data service. More... | |
SmartIF< IDataProviderSvc > & | evtSvc () const |
shortcut for method eventSvc More... | |
SmartIF< IDataProviderSvc > & | eventDataService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IConversionSvc > & | eventCnvSvc () const |
The standard event data persistency conversion service. More... | |
SmartIF< IConversionSvc > & | eventDataCnvService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IHistogramSvc > & | histoSvc () const |
The standard histogram service. More... | |
SmartIF< IHistogramSvc > & | histogramDataService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IMessageSvc > & | msgSvc () const |
The standard message service. More... | |
SmartIF< IMessageSvc > & | messageService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< INTupleSvc > & | ntupleSvc () const |
The standard N tuple service. More... | |
SmartIF< INTupleSvc > & | ntupleService () const |
Obsoleted name, kept due to the backwards compatibility. More... | |
SmartIF< IRndmGenSvc > & | randSvc () const |
AIDA-based NTuple service Returns a pointer to the AIDATuple service if present. More... | |
SmartIF< IToolSvc > & | toolSvc () const |
The standard ToolSvc service, Return a pointer to the service if present. More... | |
SmartIF< IExceptionSvc > & | exceptionSvc () const |
Get the exception Service. More... | |
SmartIF< IAlgContextSvc > & | contextSvc () const |
get Algorithm Context Service More... | |
SmartIF< ISvcLocator > & | serviceLocator () const |
The standard service locator. More... | |
SmartIF< ISvcLocator > & | svcLoc () const |
shortcut for method serviceLocator More... | |
bool | registerContext () const |
register for Algorithm Context Service? More... | |
StatusCode | createSubAlgorithm (const std::string &type, const std::string &name, Algorithm *&pSubAlg) |
Create a sub algorithm. More... | |
std::vector< Algorithm * > * | subAlgorithms () const |
List of sub-algorithms. Returns a pointer to a vector of (sub) Algorithms. More... | |
virtual StatusCode | setProperty (const Property &p) |
Implementation of IProperty::setProperty. More... | |
virtual StatusCode | setProperty (const std::string &s) |
Implementation of IProperty::setProperty. More... | |
virtual StatusCode | setProperty (const std::string &n, const std::string &v) |
Implementation of IProperty::setProperty. More... | |
virtual StatusCode | getProperty (Property *p) const |
Implementation of IProperty::getProperty. More... | |
virtual const Property & | getProperty (const std::string &name) const |
Implementation of IProperty::getProperty. More... | |
virtual StatusCode | getProperty (const std::string &n, std::string &v) const |
Implementation of IProperty::getProperty. More... | |
virtual const std::vector < Property * > & | getProperties () const |
Implementation of IProperty::getProperties. More... | |
StatusCode | setProperties () |
Set the algorithm's properties. More... | |
template<class T > | |
Property * | declareProperty (const std::string &name, T &property, const std::string &doc="none") const |
Declare the named property. More... | |
Property * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const |
Declare remote named properties. More... | |
SmartIF< IMonitorSvc > & | monitorSvc () const |
Access the monitor service. More... | |
template<class T > | |
void | declareInfo (const std::string &name, const T &var, const std::string &desc) const |
Declare monitoring information. More... | |
void | declareInfo (const std::string &name, const std::string &format, const void *var, int size, const std::string &desc) const |
Declare monitoring information (special case) More... | |
template<class TYPE > | |
StatusCode | setProperty (const std::string &name, const TYPE &value) |
set the property form the value More... | |
![]() | |
virtual | ~extend_interfaces3 () |
Virtual destructor. More... | |
![]() | |
DeclareInterfaceID (IAlgorithm, 4, 0) | |
InterfaceID. More... | |
virtual StatusCode | execute ()=0 |
The action to be performed by the algorithm on an event. More... | |
![]() | |
DeclareInterfaceID (INamedInterface, 1, 0) | |
InterfaceID. More... | |
virtual | ~INamedInterface () |
Virtual destructor (always needed for abstract classes). More... | |
![]() | |
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... | |
![]() | |
DeclareInterfaceID (IProperty, 2, 0) | |
InterfaceID. More... | |
![]() | |
DeclareInterfaceID (IStateful, 1, 0) | |
InterfaceID. More... | |
virtual | ~IStateful () |
Protected Member Functions | |
bool | isInitialized () const |
Has the Algorithm already been initialized? More... | |
bool | isFinalized () const |
Has the Algorithm already been finalized? More... | |
int | outputLevel () const |
retrieve the Algorithm output level More... | |
IntegerProperty & | outputLevelProperty () |
Accessor for the Message level property. More... | |
void | initOutputLevel (Property &prop) |
callback for output level property More... | |
Private Member Functions | |
StatusCode | service_i (const std::string &svcName, bool createIf, const InterfaceID &iid, void **ppSvc) const |
implementation of service method More... | |
StatusCode | service_i (const std::string &svcType, const std::string &svcName, const InterfaceID &iid, void **ppSvc) const |
Algorithm (const Algorithm &a) | |
Private Copy constructor: NO COPY ALLOWED. More... | |
Algorithm & | operator= (const Algorithm &rhs) |
Private assignment operator: NO ASSIGNMENT ALLOWED. More... | |
Additional Inherited Members | |
![]() | |
static const InterfaceID & | interfaceID () |
Return an instance of InterfaceID identifying the interface. More... | |
Base class from which all concrete algorithm classes should be derived.
In order for a concrete algorithm class to do anything useful the methods initialize(), execute() and finalize() should be overridden.
The base class provides utility methods for accessing standard services (event data service etc.); for declaring properties which may be configured by the job options service; and for creating sub algorithms. The only base class functionality which may be used in the constructor of a concrete algorithm is the declaration of member variables as properties. All other functionality, i.e. the use of services and the creation of sub-algorithms, may be used only in initialize() and afterwards (see the Gaudi user guide).
Definition at line 61 of file Algorithm.h.
typedef Gaudi::PluginService::Factory2<IAlgorithm*, const std::string&, ISvcLocator*> Algorithm::Factory |
Definition at line 65 of file Algorithm.h.
Algorithm::Algorithm | ( | const std::string & | name, |
ISvcLocator * | svcloc, | ||
const std::string & | version = PACKAGE_VERSION |
||
) |
Constructor.
name | The algorithm object's name |
svcloc | A pointer to a service location service |
Definition at line 28 of file Algorithm.cpp.
|
virtual |
Destructor.
Definition at line 87 of file Algorithm.cpp.
|
private |
Private Copy constructor: NO COPY ALLOWED.
SmartIF<IAuditorSvc>& Algorithm::auditorSvc | ( | ) | const |
The standard auditor service.May not be invoked before sysInitialize() has been invoked.
|
virtual |
Algorithm begin run.
This method is called at the beginning of the event loop.
Implements IAlgorithm.
Reimplemented in Sequencer, GaudiPython::PyAlgorithm, GaudiSequencer, and HelloWorld.
Definition at line 497 of file Algorithm.cpp.
m_CSS m_DCS m_ECS m_EXS m_RGS m_contextSvc SmartIF< IChronoStatSvc > & Algorithm::chronoStatService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 923 of file Algorithm.cpp.
SmartIF<IChronoStatSvc>& Algorithm::chronoSvc | ( | ) | const |
|
inlinevirtual |
Dummy implementation of IStateful::configure() method.
Implements IAlgorithm.
Definition at line 150 of file Algorithm.h.
SmartIF<IAlgContextSvc>& Algorithm::contextSvc | ( | ) | const |
StatusCode Algorithm::createSubAlgorithm | ( | const std::string & | type, |
const std::string & | name, | ||
Algorithm *& | pSubAlg | ||
) |
Create a sub algorithm.
A call to this method creates a child algorithm object. Note that the returned pointer is to Algorithm (as opposed to IAlgorithm), and thus the methods of IProperty are also available for the direct setting of the sub-algorithm's properties. Using this mechanism instead of creating daughter algorithms directly via the new operator is prefered since then the framework may take care of all of the necessary book-keeping.
type | The concrete algorithm class of the sub algorithm |
name | The name to be given to the sub algorithm |
pSubAlg | Set to point to the newly created algorithm object |
Definition at line 1116 of file Algorithm.cpp.
|
inline |
Declare monitoring information.
name | Monitoring information name known to the external system |
var | Monitoring Listener address (the item to monitor...) |
desc | Textual description of the information being monitored |
Definition at line 435 of file Algorithm.h.
|
inline |
Declare monitoring information (special case)
name | Monitoring information name known to the external system |
format | Format information |
var | Monitoring Listener address |
size | Monitoring Listener address size |
desc | Textual description of the information being monitored |
Definition at line 450 of file Algorithm.h.
|
inline |
Declare the named property.
name | the property name |
property | the property itself, |
doc | the documentation string |
Definition at line 395 of file Algorithm.h.
|
inline |
Declare remote named properties.
Definition at line 404 of file Algorithm.h.
SmartIF<IConversionSvc>& Algorithm::detCnvSvc | ( | ) | const |
The standard detector data persistency conversion service.
May not be invoked before sysInitialize() has been invoked.
SmartIF< IConversionSvc > & Algorithm::detDataCnvService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 931 of file Algorithm.cpp.
SmartIF< IDataProviderSvc > & Algorithm::detDataService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 927 of file Algorithm.cpp.
SmartIF<IDataProviderSvc>& Algorithm::detSvc | ( | ) | const |
The standard detector data service.
May not be invoked before sysInitialize() has been invoked.
|
virtual |
Algorithm end run. This method is called at the end of the event loop.
Implements IAlgorithm.
Reimplemented in Sequencer, GaudiPython::PyAlgorithm, GaudiSequencer, and HelloWorld.
Definition at line 573 of file Algorithm.cpp.
SmartIF<IConversionSvc>& Algorithm::eventCnvSvc | ( | ) | const |
The standard event data persistency conversion service.
May not be invoked before sysInitialize() has been invoked.
SmartIF< IConversionSvc > & Algorithm::eventDataCnvService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 939 of file Algorithm.cpp.
SmartIF< IDataProviderSvc > & Algorithm::eventDataService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 935 of file Algorithm.cpp.
SmartIF<IDataProviderSvc>& Algorithm::eventSvc | ( | ) | const |
The standard event data service.
May not be invoked before sysInitialize() has been invoked.
|
inline |
SmartIF<IExceptionSvc>& Algorithm::exceptionSvc | ( | ) | const |
Get the exception Service.
|
virtual |
Did this algorithm pass or fail its filter criterion for the last event?
Implements IAlgorithm.
Definition at line 862 of file Algorithm.cpp.
|
inlinevirtual |
the default (empty) implementation of IStateful::finalize() method
Implements IAlgorithm.
Reimplemented in GaudiHistos< GaudiAlgorithm >, GaudiCommon< Algorithm >, GaudiTuples< GaudiHistoAlg >, StoreExplorerAlg, CollectionCloneAlg, OutputStream, GaudiAlgorithm, TagCollectionStream, StoreSnifferAlg, Sequencer, PartitionSwitchAlg, GaudiTupleAlg, GaudiHistoAlg, EvtCollectionStream, GaudiPython::PyAlgorithm, RandomNumberAlg, GaudiSequencer, InputCopyStream, RecordOutputStream, ReplayOutputStream, Prescaler, WriteAlg, EventCounter, HelloWorld, PropertyAlg, RecordStream, and RunRecordStream.
Definition at line 161 of file Algorithm.h.
|
inlinevirtual |
returns the current state of the algorithm
Implements IAlgorithm.
Definition at line 188 of file Algorithm.h.
|
virtual |
Implementation of IProperty::getProperties.
Implements IProperty.
Definition at line 1159 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::getProperty.
Implements IProperty.
Definition at line 1150 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::getProperty.
Implements IProperty.
Definition at line 1153 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::getProperty.
Implements IProperty.
Definition at line 1156 of file Algorithm.cpp.
SmartIF< IHistogramSvc > & Algorithm::histogramDataService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 943 of file Algorithm.cpp.
SmartIF<IHistogramSvc>& Algorithm::histoSvc | ( | ) | const |
The standard histogram service.
May not be invoked before sysInitialize() has been invoked.
|
inlinevirtual |
the default (empty) implementation of IStateful::initialize() method
Implements IAlgorithm.
Reimplemented in GaudiHistos< GaudiAlgorithm >, GaudiCommon< Algorithm >, GaudiTuples< GaudiHistoAlg >, StoreExplorerAlg, CollectionCloneAlg, OutputStream, TagCollectionStream, GaudiAlgorithm, StoreSnifferAlg, GaudiTupleAlg, GaudiHistoAlg, PartitionSwitchAlg, EvtCollectionStream, Sequencer, GaudiPython::PyAlgorithm, RandomNumberAlg, GaudiSequencer, InputCopyStream, RecordOutputStream, Prescaler, ReplayOutputStream, WriteAlg, EventCounter, HelloWorld, and PropertyAlg.
Definition at line 155 of file Algorithm.h.
|
protected |
callback for output level property
Protected Member Functions.
Definition at line 1167 of file Algorithm.cpp.
|
virtual |
Is this algorithm enabled or disabled?
Implements IAlgorithm.
Definition at line 858 of file Algorithm.cpp.
|
virtual |
Has this algorithm been executed since the last reset?
Implements IAlgorithm.
Definition at line 845 of file Algorithm.cpp.
|
inlineprotectedvirtual |
Has the Algorithm already been finalized?
Implements IAlgorithm.
Definition at line 516 of file Algorithm.h.
|
inlineprotectedvirtual |
Has the Algorithm already been initialized?
Implements IAlgorithm.
Definition at line 513 of file Algorithm.h.
SmartIF< IMessageSvc > & Algorithm::messageService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 947 of file Algorithm.cpp.
|
inline |
Access the monitor service.
NULL | No monitor service is present |
non-NULL | A monitor service is present and available to be used |
Definition at line 420 of file Algorithm.h.
SmartIF< IMessageSvc > & Algorithm::msgSvc | ( | ) | const |
The standard message service.
Returns a pointer to the standard message service. May not be invoked before sysInitialize() has been invoked.
Definition at line 896 of file Algorithm.cpp.
|
virtual |
The identifying name of the algorithm object.
This is the name of a particular instantiation of an algorithm object as opposed to the name of the algorithm itself, e.g. "LinearTrackFit" may be the name of a concrete algorithm class, whereas "ApproxTrackFit" and "BestTrackFit" may be two instantiations of the class configured to find tracks with different fit criteria.
Implements INamedInterface.
Definition at line 837 of file Algorithm.cpp.
SmartIF< INTupleSvc > & Algorithm::ntupleService | ( | ) | const |
Obsoleted name, kept due to the backwards compatibility.
Definition at line 951 of file Algorithm.cpp.
SmartIF<INTupleSvc>& Algorithm::ntupleSvc | ( | ) | const |
The standard N tuple service.
Returns a pointer to the N tuple service if present.
Private assignment operator: NO ASSIGNMENT ALLOWED.
|
inlineprotected |
retrieve the Algorithm output level
Definition at line 519 of file Algorithm.h.
|
inlineprotected |
Accessor for the Message level property.
Definition at line 522 of file Algorithm.h.
SmartIF<IRndmGenSvc>& Algorithm::randSvc | ( | ) | const |
AIDA-based NTuple service Returns a pointer to the AIDATuple service if present.
The standard RandomGen service, Return a pointer to the service if present
|
inline |
register for Algorithm Context Service?
Definition at line 320 of file Algorithm.h.
|
virtual |
the default (empty) implementation of IStateful::reinitialize() method
Implements IAlgorithm.
Reimplemented in Sequencer.
Definition at line 798 of file Algorithm.cpp.
|
virtual |
Reset the executed state of the Algorithm for the duration of the current event.
Implements IAlgorithm.
Reimplemented in Sequencer, and GaudiSequencer.
Definition at line 853 of file Algorithm.cpp.
|
virtual |
the default (empty) implementation of IStateful::restart() method
Implements IAlgorithm.
Definition at line 820 of file Algorithm.cpp.
|
inline |
Access a service by name, creating it if it doesn't already exist.
Definition at line 205 of file Algorithm.h.
|
inline |
Access a service by name and type, creating it if it doesn't already exist.
Definition at line 211 of file Algorithm.h.
SmartIF< IService > Algorithm::service | ( | const std::string & | name, |
const bool | createIf = true , |
||
const bool | quiet = false |
||
) | const |
Return a pointer to the service identified by name (or "type/name")
Definition at line 1190 of file Algorithm.cpp.
|
private |
implementation of service method
Definition at line 1173 of file Algorithm.cpp.
|
private |
Definition at line 1182 of file Algorithm.cpp.
SmartIF< ISvcLocator > & Algorithm::serviceLocator | ( | ) | const |
The standard service locator.
Returns a pointer to the service locator service. This service may be used by an algorithm to request any services it requires in addition to those provided by default.
Definition at line 1091 of file Algorithm.cpp.
|
virtual |
Set the executed flag to the specified state.
Implements IAlgorithm.
Definition at line 849 of file Algorithm.cpp.
|
virtual |
Set the filter passed flag to the specified state.
Implements IAlgorithm.
Definition at line 866 of file Algorithm.cpp.
void Algorithm::setOutputLevel | ( | int | level | ) |
Set the output level for current algorithm.
Definition at line 874 of file Algorithm.cpp.
StatusCode Algorithm::setProperties | ( | ) |
Set the algorithm's properties.
This method requests the job options service to set the values of any declared properties. The method is invoked from within sysInitialize() by the framework and does not need to be explicitly called by a concrete algorithm.
Definition at line 1096 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::setProperty.
Implements IProperty.
Definition at line 1141 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::setProperty.
Implements IProperty.
Definition at line 1144 of file Algorithm.cpp.
|
virtual |
Implementation of IProperty::setProperty.
Implements IProperty.
Definition at line 1147 of file Algorithm.cpp.
|
inline |
set the property form the value
Note: the interface IProperty allows setting of the properties either directly from other properties or from strings only
This is very convenient in resetting of the default properties in the derived classes. E.g. without this method one needs to convert everything into strings to use IProperty::setProperty
For simple cases it is more or less ok, but for complicated properties it is just ugly..
name | name of the property |
value | value of the property |
Definition at line 506 of file Algorithm.h.
|
inlinevirtual |
the default (empty) implementation of IStateful::start() method
Implements IAlgorithm.
Reimplemented in Sequencer, GaudiPython::PyAlgorithm, and ReplayOutputStream.
Definition at line 157 of file Algorithm.h.
|
inlinevirtual |
the default (empty) implementation of IStateful::stop() method
Implements IAlgorithm.
Reimplemented in Sequencer, GaudiPython::PyAlgorithm, and ReplayOutputStream.
Definition at line 159 of file Algorithm.h.
std::vector< Algorithm * > * Algorithm::subAlgorithms | ( | ) | const |
List of sub-algorithms. Returns a pointer to a vector of (sub) Algorithms.
Definition at line 870 of file Algorithm.cpp.
|
inline |
shortcut for method serviceLocator
Definition at line 317 of file Algorithm.h.
|
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.
Implements IAlgorithm.
Definition at line 426 of file Algorithm.cpp.
|
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.
Implements IAlgorithm.
Definition at line 502 of file Algorithm.cpp.
|
virtual |
The actions to be performed by the algorithm on an event.
This method is invoked once per event for top level algorithms by the application manager. This method invokes execute() method. For sub-algorithms either the sysExecute() method or execute() method must be EXPLICITLY invoked by the parent algorithm.
Implements IAlgorithm.
Reimplemented in GaudiAlgorithm.
Definition at line 578 of file Algorithm.cpp.
|
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.
Implements IAlgorithm.
Definition at line 726 of file Algorithm.cpp.
|
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.
Implements IAlgorithm.
Definition at line 93 of file Algorithm.cpp.
|
virtual |
Reinitialization method invoked by the framework.
This method is responsible for any reinitialization 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.
Implements IAlgorithm.
Definition at line 259 of file Algorithm.cpp.
|
virtual |
Restart method invoked by the framework.
It will in turn invoke the restart() method of the derived algorithm, and of any sub-algorithms which it creates.
Implements IAlgorithm.
Definition at line 343 of file Algorithm.cpp.
|
virtual |
Reinitialization method invoked by the framework.
This method is responsible for any reinitialization 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.
Implements IAlgorithm.
Definition at line 182 of file Algorithm.cpp.
|
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.
Implements IAlgorithm.
Definition at line 667 of file Algorithm.cpp.
|
inlinevirtual |
returns the state the algorithm will be in after the ongoing transition
Implements IStateful.
Definition at line 191 of file Algorithm.h.
|
inlinevirtual |
Dummy implementation of IStateful::terminate() method.
Implements IAlgorithm.
Definition at line 152 of file Algorithm.h.
The standard ToolSvc service, Return a pointer to the service if present.
|
virtual |
|
private |
global flag for auditors
Definition at line 556 of file Algorithm.h.
|
private |
flag for auditors in "beginRun()"
Definition at line 562 of file Algorithm.h.
|
private |
flag for auditors in "endRun()"
Definition at line 563 of file Algorithm.h.
|
private |
flag for auditors in "execute()"
Definition at line 560 of file Algorithm.h.
|
private |
flag for auditors in "finalize()"
Definition at line 561 of file Algorithm.h.
|
private |
flag for auditors in "initialize()"
Definition at line 557 of file Algorithm.h.
|
private |
flag for auditors in "Reinitialize()"
Definition at line 558 of file Algorithm.h.
|
private |
flag for auditors in "Restart()"
Definition at line 559 of file Algorithm.h.
|
private |
flag for auditors in "initialize()"
Definition at line 564 of file Algorithm.h.
|
private |
flag for auditors in "Reinitialize()"
Definition at line 565 of file Algorithm.h.
|
mutableprivate |
Definition at line 548 of file Algorithm.h.
|
mutableprivate |
Definition at line 542 of file Algorithm.h.
|
mutableprivate |
Detector conversion service.
Definition at line 538 of file Algorithm.h.
|
mutableprivate |
Detector data service.
Definition at line 537 of file Algorithm.h.
|
mutableprivate |
Event conversion service.
Definition at line 536 of file Algorithm.h.
|
mutableprivate |
Event data service.
Definition at line 535 of file Algorithm.h.
|
private |
Algorithm error counter.
Definition at line 555 of file Algorithm.h.
|
private |
Algorithm Max number of errors.
Definition at line 554 of file Algorithm.h.
|
mutableprivate |
Exception Handler Service.
Definition at line 544 of file Algorithm.h.
|
private |
Filter passed flag.
Definition at line 566 of file Algorithm.h.
|
mutableprivate |
Histogram data service.
Definition at line 539 of file Algorithm.h.
|
private |
Algorithm is enabled flag.
Definition at line 567 of file Algorithm.h.
|
private |
Algorithm is executed flag.
Definition at line 568 of file Algorithm.h.
|
private |
Algorithm has been finalized flag.
Definition at line 571 of file Algorithm.h.
|
private |
Name to use for Monitor Service.
Definition at line 550 of file Algorithm.h.
|
mutableprivate |
Message service.
Definition at line 534 of file Algorithm.h.
|
private |
Algorithm's name for identification.
Definition at line 530 of file Algorithm.h.
|
mutableprivate |
N tuple service.
Definition at line 540 of file Algorithm.h.
|
private |
Algorithm output level.
Definition at line 553 of file Algorithm.h.
|
mutableprivate |
Definition at line 545 of file Algorithm.h.
|
mutableprivate |
Online Monitoring Service.
Definition at line 547 of file Algorithm.h.
|
private |
For management of properties.
Definition at line 552 of file Algorithm.h.
|
private |
Pointer to service locator service.
Definition at line 551 of file Algorithm.h.
Definition at line 546 of file Algorithm.h.
|
private |
flag to register for Algorithm Context Service
Definition at line 549 of file Algorithm.h.
|
mutableprivate |
Random Number Generator Service.
Definition at line 543 of file Algorithm.h.
|
private |
Algorithm has been initialized flag.
Definition at line 569 of file Algorithm.h.
|
private |
Sub algorithms.
Definition at line 532 of file Algorithm.h.
|
private |
Algorithm has been initialized flag.
Definition at line 570 of file Algorithm.h.
|
private |
Algorithm's version.
Definition at line 531 of file Algorithm.h.