![]() |
The Gaudi Framework
v27r0
|
The AlgorithmManager class is in charge of the creation of concrete instances of Algorithms. More...
#include <src/ApplicationMgr/AlgorithmManager.h>
Classes | |
struct | AlgorithmItem |
Public Types | |
typedef std::map< std::string, std::string > | AlgTypeAliasesMap |
typedefs and classes More... | |
![]() | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
![]() | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
take union of the ext_iids of all Interfaces... More... | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
take union of the ext_iids of all Interfaces... More... | |
Public Member Functions | |
AlgorithmManager (IInterface *iface) | |
default creator More... | |
~AlgorithmManager () override=default | |
virtual destructor More... | |
StatusCode | addAlgorithm (IAlgorithm *alg) override |
implementation of IAlgManager::addAlgorithm More... | |
StatusCode | removeAlgorithm (IAlgorithm *alg) override |
implementation of IAlgManager::removeAlgorithm More... | |
StatusCode | createAlgorithm (const std::string &algtype, const std::string &algname, IAlgorithm *&algorithm, bool managed=false, bool checkIfExists=true) override |
implementation of IAlgManager::createAlgorithm More... | |
bool | existsAlgorithm (const std::string &name) const override |
implementation of IAlgManager::existsAlgorithm More... | |
const std::vector< IAlgorithm * > & | getAlgorithms () const override |
implementation of IAlgManager::getAlgorithms More... | |
StatusCode | initialize () override |
Initialization (from CONFIGURED to INITIALIZED). More... | |
StatusCode | start () override |
Start (from INITIALIZED to RUNNING). More... | |
StatusCode | stop () override |
Stop (from RUNNING to INITIALIZED). More... | |
StatusCode | finalize () override |
Finalize (from INITIALIZED to CONFIGURED). More... | |
StatusCode | reinitialize () override |
Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED). More... | |
StatusCode | restart () override |
Initialization (from RUNNING to RUNNING, via INITIALIZED). More... | |
const std::string & | name () const override |
Return the name of the manager (implementation of INamedInterface) More... | |
SmartIF< IAlgorithm > & | algorithm (const Gaudi::Utils::TypeNameString &typeName, const bool createIf=true) override |
AlgTypeAliasesMap & | typeAliases () |
const AlgTypeAliasesMap & | typeAliases () const |
![]() | |
void * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
~extends () override=default | |
Virtual destructor. More... | |
void * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
~extends () override=default | |
Virtual destructor. More... | |
![]() | |
~extend_interfaces () override=default | |
Virtual destructor. More... | |
~extend_interfaces () override=default | |
Virtual destructor. More... | |
Private Attributes | |
std::vector< AlgorithmItem > | m_algs |
algorithms maintained by AlgorithmManager More... | |
std::vector< IAlgorithm * > | m_listOfPtrs |
List of pointers to the know services used to implement getAlgorithms() More... | |
AlgTypeAliasesMap | m_algTypeAliases |
The AlgorithmManager class is in charge of the creation of concrete instances of Algorithms.
The ApplicationMgr delegates the creation and bookkeeping of algorithms to the algorithm factory. In order to be able to create algorithms from which it does not know the concrete type it requires that the algorithm has been declared in one of 3 possible ways: an abstract static creator function, a dynamic link library or an abstract factory reference.
Definition at line 31 of file AlgorithmManager.h.
typedef std::map<std::string, std::string> AlgorithmManager::AlgTypeAliasesMap |
typedefs and classes
Definition at line 48 of file AlgorithmManager.h.
AlgorithmManager::AlgorithmManager | ( | IInterface * | iface | ) |
|
overridedefault |
virtual destructor
|
override |
implementation of IAlgManager::addAlgorithm
Definition at line 25 of file AlgorithmManager.cpp.
|
override |
Definition at line 103 of file AlgorithmManager.cpp.
|
override |
implementation of IAlgManager::createAlgorithm
Definition at line 41 of file AlgorithmManager.cpp.
|
override |
implementation of IAlgManager::existsAlgorithm
Definition at line 118 of file AlgorithmManager.cpp.
|
override |
Finalize (from INITIALIZED to CONFIGURED).
Definition at line 165 of file AlgorithmManager.cpp.
|
override |
implementation of IAlgManager::getAlgorithms
Definition at line 123 of file AlgorithmManager.cpp.
|
override |
Initialization (from CONFIGURED to INITIALIZED).
Definition at line 135 of file AlgorithmManager.cpp.
|
inlineoverride |
Return the name of the manager (implementation of INamedInterface)
Definition at line 83 of file AlgorithmManager.h.
|
override |
Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED).
Definition at line 180 of file AlgorithmManager.cpp.
|
override |
implementation of IAlgManager::removeAlgorithm
Definition at line 31 of file AlgorithmManager.cpp.
|
override |
Initialization (from RUNNING to RUNNING, via INITIALIZED).
Definition at line 193 of file AlgorithmManager.cpp.
|
override |
Start (from INITIALIZED to RUNNING).
Definition at line 145 of file AlgorithmManager.cpp.
|
override |
Stop (from RUNNING to INITIALIZED).
Definition at line 155 of file AlgorithmManager.cpp.
|
inline |
Definition at line 90 of file AlgorithmManager.h.
|
inline |
Definition at line 91 of file AlgorithmManager.h.
|
private |
algorithms maintained by AlgorithmManager
Definition at line 94 of file AlgorithmManager.h.
|
private |
Definition at line 99 of file AlgorithmManager.h.
|
mutableprivate |
List of pointers to the know services used to implement getAlgorithms()
Definition at line 97 of file AlgorithmManager.h.