![]() |
Iguana 1.0.0
Implementation Guardian of Analysis Algorithms
|
Preprocessor macros to generate standardized algorithm boilerplate code.
Definition in file AlgorithmBoilerplate.h.

Go to the source code of this file.
Macros | |
| #define | CONSTRUCT_IGUANA_ALGORITHM(ALGO_NAME, BASE_NAME) |
| #define | DEFINE_IGUANA_ALGORITHM(ALGO_NAME, ALGO_FULL_NAME) |
| #define | DEFINE_IGUANA_SUBALGORITHM(ALGO_NAME, ALGO_FULL_NAME, BASE_NAME) |
| #define | DEFINE_IGUANA_VALIDATOR(VDOR_NAME, VDOR_FULL_NAME) |
| #define | DEPRECATE_IGUANA_ALGORITHM(CODE) |
| #define | DESTROY_IGUANA_ALGORITHM(ALGO_NAME) |
| #define | IGUANA_ALGORITHM_PRIVATE_MEMBERS static bool s_registered; |
| Define the private members of an algorithm. | |
| #define | IGUANA_ALGORITHM_PUBLIC_MEMBERS(ALGO_NAME, ALGO_FULL_NAME, BASE_NAME) |
| #define | REGISTER_IGUANA_ALGORITHM(ALGO_NAME, ...) |
| #define | REGISTER_IGUANA_VALIDATOR(VDOR_NAME) |
| #define CONSTRUCT_IGUANA_ALGORITHM | ( | ALGO_NAME, | |
| BASE_NAME ) |
Generate an algorithm constructor
| ALGO_NAME | the name of the algorithm class |
| BASE_NAME | the name of the base class |
Definition at line 7 of file AlgorithmBoilerplate.h.
| #define DEFINE_IGUANA_ALGORITHM | ( | ALGO_NAME, | |
| ALGO_FULL_NAME ) |
Define the public and private members of an algorithm, along with its constructor and destructor; this macro should be called in the class body in the algorithm's header file
| ALGO_NAME | the name of the algorithm class |
| ALGO_FULL_NAME | the full name of this algorithm, used by iguana::AlgorithmFactory |
Definition at line 58 of file AlgorithmBoilerplate.h.
| #define DEFINE_IGUANA_SUBALGORITHM | ( | ALGO_NAME, | |
| ALGO_FULL_NAME, | |||
| BASE_NAME ) |
Define the public and private members of an algorithm, with a custom base-class algorithm, along with its constructor and destructor; this macro should be called in the class body in the algorithm's header file
| ALGO_NAME | the name of the algorithm class |
| ALGO_FULL_NAME | the full name of this algorithm, used by iguana::AlgorithmFactory |
| BASE_NAME | the name of the base class, which may be Algorithm or one of its derived classes |
Definition at line 46 of file AlgorithmBoilerplate.h.
| #define DEFINE_IGUANA_VALIDATOR | ( | VDOR_NAME, | |
| VDOR_FULL_NAME ) |
Define the public and private members of a validator, along with its constructor and destructor; this macro should be called in the class body in the validator's header file
| VDOR_NAME | the name of the validator class |
| VDOR_FULL_NAME | the full name of this validator, used by iguana::AlgorithmFactory |
Definition at line 65 of file AlgorithmBoilerplate.h.
| #define DEPRECATE_IGUANA_ALGORITHM | ( | CODE | ) |
Override Start, Run, and Stop functions for a deprecated algorithm.
| CODE | the code to run within each of these functions; it should throw a runtime exception. |
Definition at line 86 of file AlgorithmBoilerplate.h.
| #define DESTROY_IGUANA_ALGORITHM | ( | ALGO_NAME | ) |
Generate an algorithm destructor
| ALGO_NAME | the name of the algorithm class |
Definition at line 17 of file AlgorithmBoilerplate.h.
| #define IGUANA_ALGORITHM_PRIVATE_MEMBERS static bool s_registered; |
Define the private members of an algorithm.
Definition at line 36 of file AlgorithmBoilerplate.h.
| #define IGUANA_ALGORITHM_PUBLIC_MEMBERS | ( | ALGO_NAME, | |
| ALGO_FULL_NAME, | |||
| BASE_NAME ) |
Define the public members of an algorithm
| ALGO_NAME | the name of the algorithm class |
| ALGO_FULL_NAME | the full name of this algorithm, used by iguana::AlgorithmFactory |
| BASE_NAME | the name of the base class |
Definition at line 26 of file AlgorithmBoilerplate.h.
| #define REGISTER_IGUANA_ALGORITHM | ( | ALGO_NAME, | |
| ... ) |
Register an algorithm for the iguana::AlgorithmFactory; this macro should be called in the algorithm's implementation
| ALGO_NAME | the name of the algorithm class |
| ... | if this algorithm creates new banks, add their names here; this is a variadic parameter, so you may list as many as needed, or none. |
Definition at line 74 of file AlgorithmBoilerplate.h.
| #define REGISTER_IGUANA_VALIDATOR | ( | VDOR_NAME | ) |
Register a validator for the iguana::AlgorithmFactory, similar to REGISTER_IGUANA_ALGORITHM
| VDOR_NAME | the name of the validator class |
Definition at line 79 of file AlgorithmBoilerplate.h.