The IAlgResourcePool is the interface for managing algorithm instances, in particular if clones of th...
virtual std::list< IAlgorithm * > getTopAlgList()=0
Get top list of algorithms.
virtual StatusCode acquireAlgorithm(std::string_view name, IAlgorithm *&algo, bool blocking=false)=0
Acquire a certain algorithm using its name.
DeclareInterfaceID(IAlgResourcePool, 1, 0)
InterfaceID.
virtual StatusCode releaseAlgorithm(std::string_view name, IAlgorithm *&algo)=0
Release a certain algorithm.
virtual StatusCode acquireResource(std::string_view name, unsigned int value)=0
Acquire units of a certain resource.
virtual std::list< IAlgorithm * > getFlatAlgList()=0
Get the flat list of algorithms.
virtual StatusCode releaseResource(std::string_view name, unsigned int value)=0
Release a certain resource.
The IAlgorithm is the interface implemented by the Algorithm base class.
Definition of the basic interface.
This class is used for returning status codes from appropriate routines.