|
Gaudi Framework, version v21r8 |
| Home | Generated: 17 Mar 2010 |
#include <GaudiKernel/IAlgManager.h>


Public Member Functions | |
| DeclareInterfaceID (IAlgManager, 5, 0) | |
| InterfaceID. | |
| virtual StatusCode | addAlgorithm (IAlgorithm *alg)=0 |
| Add an algorithm to the list of known algorithms. | |
| virtual StatusCode | removeAlgorithm (IAlgorithm *alg)=0 |
| Remove an algorithm from the list of known algorithms. | |
| virtual StatusCode | createAlgorithm (const std::string &algtype, const std::string &algname, IAlgorithm *&alg, bool managed=false)=0 |
| Create an instance of a algorithm type that has been declared beforehand and assigns to it a name. | |
| virtual StatusCode | getAlgorithm (const std::string &name, IAlgorithm *&alg) const |
| Find an algorithm with given name in the list of known algorithms. | |
| virtual bool | existsAlgorithm (const std::string &name) const =0 |
| Check the existence of an algorithm with a given name in the list of known algorithms. | |
| virtual const std::list < IAlgorithm * > & | getAlgorithms () const =0 |
| Return the list of Algorithms. | |
| virtual StatusCode | initializeAlgorithms () |
| Initializes the list of "managed" algorithms. | |
| virtual StatusCode | startAlgorithms () |
| Starts the list of "managed" algorithms. | |
| virtual StatusCode | stopAlgorithms () |
| Stops the list of "managed" algorithms. | |
| virtual StatusCode | finalizeAlgorithms () |
| Finalizes the list of "managed" algorithms. | |
| virtual StatusCode | reinitializeAlgorithms () |
| Initializes the list of "managed" algorithms. | |
| virtual StatusCode | restartAlgorithms () |
| Starts the list of "managed" algorithms. | |
| virtual SmartIF< IAlgorithm > & | algorithm (const Gaudi::Utils::TypeNameString &typeName, const bool createIf=true)=0 |
| Returns a smart pointer to a service. | |
| template<typename T> | |
| SmartIF< T > | algorithm (const Gaudi::Utils::TypeNameString &typeName, const bool createIf=true) |
| Returns a smart pointer to the requested interface of a service. | |
Clients use this interface to declare abstract algorithm factories, and to create concrete instances of algorithms. There are currently 3 methods for the declaration: static creator method (creator), an abstract factory (factory) or a sharable library (module).
Definition at line 28 of file IAlgManager.h.
| IAlgManager::DeclareInterfaceID | ( | IAlgManager | , | |
| 5 | , | |||
| 0 | ||||
| ) |
| virtual StatusCode IAlgManager::addAlgorithm | ( | IAlgorithm * | alg | ) | [pure virtual] |
| virtual StatusCode IAlgManager::removeAlgorithm | ( | IAlgorithm * | alg | ) | [pure virtual] |
| virtual StatusCode IAlgManager::createAlgorithm | ( | const std::string & | algtype, | |
| const std::string & | algname, | |||
| IAlgorithm *& | alg, | |||
| bool | managed = false | |||
| ) | [pure virtual] |
Create an instance of a algorithm type that has been declared beforehand and assigns to it a name.
It returns a pointer to an IAlgorithm.
Implemented in AlgorithmManager.
| virtual StatusCode IAlgManager::getAlgorithm | ( | const std::string & | name, | |
| IAlgorithm *& | alg | |||
| ) | const [inline, virtual] |
Find an algorithm with given name in the list of known algorithms.
Definition at line 48 of file IAlgManager.h.
00050 { 00051 SmartIF<IAlgorithm> &si = const_cast<IAlgManager*>(this)->algorithm(name, false); 00052 alg = si.get(); 00053 return si.isValid() ? StatusCode::SUCCESS : StatusCode::FAILURE; 00054 }
| virtual bool IAlgManager::existsAlgorithm | ( | const std::string & | name | ) | const [pure virtual] |
Check the existence of an algorithm with a given name in the list of known algorithms.
Implemented in AlgorithmManager.
| virtual const std::list<IAlgorithm*>& IAlgManager::getAlgorithms | ( | ) | const [pure virtual] |
| virtual StatusCode IAlgManager::initializeAlgorithms | ( | ) | [inline, virtual] |
Initializes the list of "managed" algorithms.
Definition at line 64 of file IAlgManager.h.
00064 { return initialize(); }
| virtual StatusCode IAlgManager::startAlgorithms | ( | ) | [inline, virtual] |
Starts the list of "managed" algorithms.
Definition at line 67 of file IAlgManager.h.
00067 { return start(); }
| virtual StatusCode IAlgManager::stopAlgorithms | ( | ) | [inline, virtual] |
Stops the list of "managed" algorithms.
Definition at line 70 of file IAlgManager.h.
00070 { return stop(); }
| virtual StatusCode IAlgManager::finalizeAlgorithms | ( | ) | [inline, virtual] |
Finalizes the list of "managed" algorithms.
Definition at line 73 of file IAlgManager.h.
00073 { return finalize(); }
| virtual StatusCode IAlgManager::reinitializeAlgorithms | ( | ) | [inline, virtual] |
Initializes the list of "managed" algorithms.
Definition at line 76 of file IAlgManager.h.
00076 { return reinitialize(); }
| virtual StatusCode IAlgManager::restartAlgorithms | ( | ) | [inline, virtual] |
Starts the list of "managed" algorithms.
Definition at line 79 of file IAlgManager.h.
00079 { return restart(); }
| virtual SmartIF<IAlgorithm>& IAlgManager::algorithm | ( | const Gaudi::Utils::TypeNameString & | typeName, | |
| const bool | createIf = true | |||
| ) | [pure virtual] |
| SmartIF<T> IAlgManager::algorithm | ( | const Gaudi::Utils::TypeNameString & | typeName, | |
| const bool | createIf = true | |||
| ) | [inline] |
Returns a smart pointer to the requested interface of a service.
Reimplemented in AlgorithmManager.
Definition at line 87 of file IAlgManager.h.
00087 { 00088 return SmartIF<T>(algorithm(typeName, createIf)); 00089 }