![]() |
Iguana 1.1.0
Implementation Guardian of Analysis Algorithms
|
#include <Algorithm.h>
Factory to create an algorithm.
Definition at line 324 of file Algorithm.h.
Public Types | |
| using | algo_creator_t = std::function<algo_t()> |
| Algorithm creator function type. | |
Static Public Member Functions | |
| static algo_t | Create (std::string const &algo_name) noexcept(false) |
| static std::optional< std::vector< std::string > > | GetCreatedBanks (std::string const &algo_name) noexcept(false) |
| static std::optional< std::vector< std::string > > | GetCreatorAlgorithms (std::string const &bank_name) noexcept |
| static bool | Register (std::string const &algo_name, algo_creator_t creator, std::vector< std::string > const new_banks={}) noexcept |
| using iguana::AlgorithmFactory::algo_creator_t = std::function<algo_t()> |
Algorithm creator function type.
Definition at line 330 of file Algorithm.h.
|
static |
Create an algorithm. Throws an exception if the algorithm cannot be created
| algo_name | the name of the algorithm, which was used as an argument in the AlgorithmFactory::Register call |
|
static |
Get list of banks which are created by a particular creator-type algorithm
| algo_name | the algorithm name |
|
staticnoexcept |
Get list of creator-type algorithms which create a particular bank
| bank_name | the bank name |
|
staticnoexcept |
Register an algorithm with a unique name. Algorithms register themselves by calling this function.
| algo_name | the name of the algorithm (not equivalent to Object::m_name) |
| creator | the creator function |
| new_banks | if this algorithm creates new banks, list them here |