Class for managing the workflow of load - configure - initialize. More...
#include <configurable.h>
Public Types | |
using | environment_map = std::map< std::string, const void * > |
Type for environment_map. | |
Public Member Functions | |
virtual void | load (configuration &config) |
Load the program. Used to load files and libraries into memory. More... | |
virtual void | configure (configuration &config) |
Configure the program. Used to load and set parameters. More... | |
virtual void | initialize (const environment_map &environment) |
Initialize the program. Used to get things ready for actual use. More... | |
virtual void | setup_now (configuration &config=get_global_configuration()) |
Run load - configure - initialize processes. | |
virtual bool | not_recursive () |
Check if this instance is not derived from recursive_configurable. More... | |
Static Public Member Functions | |
static configuration & | set_global_configuration (const configuration &config) |
Assign the global settings of the program. More... | |
static configuration & | get_global_configuration () |
Get the global settings of the program. More... | |
template<class T > | |
static const T & | get_env (const environment_map &environment, std::string key) |
Extract an specified type of pointer from the input environment. More... | |
Protected Member Functions | |
bool | check_set (const environment_map &environment, std::vector< std::string > names) |
Check if the values for a variable keys exist. More... | |
Class for managing the workflow of load - configure - initialize.
|
inlineprotected |
Check if the values for a variable keys exist.
true
if all the values for the keys exist. false
otherwise.
|
inlinevirtual |
Configure the program. Used to load and set parameters.
[in] | config | Configuration setting. |
Reimplemented in recursive_configurable_driver< T >, and dylibloader.
|
inlinestatic |
Extract an specified type of pointer from the input environment.
|
static |
Get the global settings of the program.
|
inlinevirtual |
Initialize the program. Used to get things ready for actual use.
[in] | config | Configuration setting. |
Reimplemented in runnable, and recursive_configurable_driver< T >.
|
inlinevirtual |
Load the program. Used to load files and libraries into memory.
[in] | config | Configuration setting. |
Reimplemented in recursive_configurable_driver< T >, and dylibloader.
|
inlinevirtual |
Check if this instance is not derived from recursive_configurable.
true
if the class is not inherited from recursive_configurable. false
if inherited. Reimplemented in recursive_configurable.
|
static |
Assign the global settings of the program.
[in] | config | Configuration setting. |