recursive_configurable class that also inherits module. More...
#include <recursive_configurable_module.h>
Public Member Functions | |
virtual void | recursive_load (configuration &config) override |
Start recursively load configurables. More... | |
virtual void | recursive_configure (configuration &config) override |
Recursively call configure. More... | |
![]() | |
recursive_configurable ()=default | |
Default constructor. | |
virtual void | recursive_initialize (const configurable::environment_map &environment=configurable::environment_map()) |
Initialize the program itself and relay the same to its children. Used to get things ready for actual use. More... | |
virtual bool | is_ready () const |
Get if the instance is initialized. More... | |
virtual void | add_child (configurable *child) |
Add a child instance. More... | |
virtual void | add_child (recursive_configurable *child) |
Add a child instance. More... | |
virtual void | remove_child (configurable *child) |
Remove a child instance. More... | |
virtual void | remove_child (recursive_configurable *child) |
Remove a child instance. More... | |
virtual void | setup_now (configuration &config=get_global_configuration()) override |
Run recursive_load - recursive_configure - recursive_initialize processes. | |
virtual bool | not_recursive () override |
Check if this instance is not derived from recursive_configurable. More... | |
void | set_environment (std::string name, const void *value) |
Set the pointer to an environmental value associated with an input name. More... | |
![]() | |
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... | |
![]() | |
module () | |
Default constructor for module. | |
virtual | ~module () |
Default destructor for module. | |
virtual std::string | get_module_name () const |
Get the module name. More... | |
![]() | |
credit ()=default | |
Default constructor. | |
credit (std::string name, std::string argument_name) | |
Constructor for credit. More... | |
virtual void | set_name (std::string name, std::string argument_name="") |
Set name (and perhaps, argument name together) More... | |
virtual std::string | get_name () const |
Get the name. | |
virtual void | set_argument_name (std::string argument_name) |
Set an argument name. More... | |
virtual std::string | get_argument_name () const |
Get an argument name. More... | |
virtual double | get_version () const |
Get version. More... | |
virtual std::string | get_author () const |
Get author's name. More... | |
virtual std::tuple< int, int, int > | get_date () const |
Get currently set date. More... | |
virtual std::string | get_email_address () const |
Get email address. More... | |
Additional Inherited Members | |
![]() | |
using | environment_map = std::map< std::string, const void * > |
Type for environment_map. | |
![]() | |
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... | |
![]() | |
static std::string | module_libpath (std::string module_name) |
Get the path to the dynamic library. e.g., "mylib" -> "symlink-public/lib/libshiokaze_mylib.dylib". More... | |
static module * | alloc_module (configuration &config, std::string arg_name, std::string default_module_name, std::string description) |
Automatically reads the parameter "arg_name" to fetch the name for the library, and allocate the library. More... | |
static module * | alloc_module (std::string path) |
Reads the dynamic library of a class module, allocate, and return the pointer to it. More... | |
static unsigned | close_all_handles () |
Close all the handles that are still unloaded. More... | |
template<class T > | |
static std::unique_ptr< T > | unique_alloc_module (configuration &config, std::string arg_name, std::string default_module_name, std::string description) |
Allocate the module and cast to the a specified class T. More... | |
static unsigned | count_open_modules () |
Count all the open modules. More... | |
![]() | |
bool | check_set (const environment_map &environment, std::vector< std::string > names) |
Check if the values for a variable keys exist. More... | |
![]() | |
std::string | m_name |
Name of credit. | |
std::string | m_argument_name |
Argument name. | |
recursive_configurable class that also inherits module.
|
inlineoverridevirtual |
Recursively call configure.
[in] | config | Configuration setting. |
Reimplemented from recursive_configurable.
|
inlineoverridevirtual |
Start recursively load configurables.
[in] | config | Configuration setting. |
Reimplemented from recursive_configurable.