Go to the documentation of this file.
11 #ifndef GAUDIKERNEL_IALGMANAGER_H
12 #define GAUDIKERNEL_IALGMANAGER_H
54 bool checkIfExists =
true
57 #if !defined( GAUDI_V22_API ) || defined( G22_NEW_SVCLOCATOR )
58 [[deprecated(
"use IAlgManager::algorithm(type_name, createIf) -> SmartIF<IAlgorithm>" )]]
virtual StatusCode
68 virtual bool existsAlgorithm( std::string_view
name
76 const bool createIf =
true ) = 0;
85 #endif // GAUDI_IALGMANAGER_H
virtual StatusCode addAlgorithm(IAlgorithm *alg)=0
Add an algorithm to the list of known algorithms.
virtual const std::vector< IAlgorithm * > & getAlgorithms() const =0
Return the list of Algorithms.
SmartIF< T > algorithm(const Gaudi::Utils::TypeNameString &typeName, const bool createIf=true)
Returns a smart pointer to the requested interface of a service.
virtual StatusCode removeAlgorithm(IAlgorithm *alg)=0
Remove an algorithm from the list of known algorithms.
virtual SmartIF< IAlgorithm > & algorithm(const Gaudi::Utils::TypeNameString &typeName, const bool createIf=true)=0
Returns a smart pointer to a service.
Helper class to parse a string of format "type/name".
virtual StatusCode createAlgorithm(std::string algtype, std::string algname, IAlgorithm *&alg, bool managed=false, bool checkIfExists=true)=0
Create an instance of a algorithm type that has been declared beforehand and assigns to it a name.
constexpr static const auto SUCCESS
TYPE * get() const
Get interface pointer.
DeclareInterfaceID(IAlgManager, 6, 0)
InterfaceID.
std::string typeName(const std::type_info &typ)
constexpr static const auto FAILURE
virtual StatusCode getAlgorithm(std::string_view name, IAlgorithm *&alg) const
Find an algorithm with given name in the list of known algorithms.