![]() |
ATLAS Offline Software
|
#include <AlgFactory.h>
Public Types | |
| typedef std::unique_ptr< ConfigurableAlg >(* | Creator) (const std::string &methodName) |
| function type to create an algorithm | |
Public Member Functions | |
| bool | Register (const std::string &algType, Creator creator) |
| Register creator function for algorithm type. | |
| ConfigurableAlg * | create (const std::string &algType, const std::string &algName) |
| Create algorithm of given type and name. | |
| ConfigurableAlg * | algorithm (const std::string &algName) |
| Retrieve algorithm by name. | |
| std::vector< std::string > | getAllClassNames () const |
| void | printAlgorithmNames () const |
Static Public Member Functions | |
| static const AlgFactory & | instance () |
| read-only access | |
| static AlgFactory &mutable_instance | ATLAS_NOT_THREAD_SAFE () |
| non-const access | |
Private Member Functions | |
| AlgFactory ()=default | |
| AlgFactory (const AlgFactory &)=delete | |
| no copy | |
| AlgFactory & | operator= (const AlgFactory &)=delete |
| no assign | |
Private Attributes | |
| std::map< std::string, Creator > | m_callMap |
| std::map< std::string, std::unique_ptr< TCS::ConfigurableAlg > > | m_algs |
Definition at line 16 of file AlgFactory.h.
| typedef std::unique_ptr< ConfigurableAlg >(* TCS::AlgFactory::Creator) (const std::string &methodName) |
function type to create an algorithm
Definition at line 19 of file AlgFactory.h.
|
privatedefault |
|
privatedelete |
no copy
| TCS::ConfigurableAlg * AlgFactory< ConcreteAlgorithm >::algorithm | ( | const std::string & | algName | ) |
Retrieve algorithm by name.
Definition at line 66 of file AlgFactory.cxx.
|
static |
non-const access
| TCS::ConfigurableAlg * AlgFactory< ConcreteAlgorithm >::create | ( | const std::string & | algType, |
| const std::string & | algName ) |
Create algorithm of given type and name.
Definition at line 21 of file AlgFactory.cxx.
| std::vector< std::string > AlgFactory< ConcreteAlgorithm >::getAllClassNames | ( | ) | const |
Definition at line 56 of file AlgFactory.cxx.
|
static |
read-only access
Definition at line 7 of file AlgFactory.cxx.
|
privatedelete |
no assign
| void AlgFactory< ConcreteAlgorithm >::printAlgorithmNames | ( | ) | const |
Definition at line 77 of file AlgFactory.cxx.
| bool AlgFactory< ConcreteAlgorithm >::Register | ( | const std::string & | algType, |
| Creator | creator ) |
Register creator function for algorithm type.
Definition at line 46 of file AlgFactory.cxx.
|
private |
Definition at line 42 of file AlgFactory.h.
|
private |
Definition at line 41 of file AlgFactory.h.