This is tha base of all plugins that create "things", like filters, cost functions time step operatores and the like. More...
#include <mia/core/factory.hh>
Public Types | |
typedef P | Product |
typedef to describe the product of the factory More... | |
typedef std::shared_ptr< P > | SharedProduct |
typedef for the shared version of the product More... | |
typedef std::unique_ptr< P > | UniqueProduct |
typedef for the unique version of the product More... | |
![]() | |
typedef P::plugin_data | PlugData |
Typedef for the data type descriptor handled by this plug-in. More... | |
typedef P::plugin_type | PlugType |
Typedef for the plugin type descriptor handled by this plug-in. More... | |
Public Member Functions | |
virtual Product * | create (const CParsedOptions &options, char const *params) __attribute__((warn_unused_result)) |
TFactory (char const *const name) | |
![]() | |
virtual void | get_help (std::ostream &os) const |
const std::string | get_long_name () const |
TPlugin (const char *name) | |
![]() | |
void | add_dependend_handlers (HandlerHelpMap &handler_map) |
void | add_property (const char *property) |
void | append_interface (CPluginBase *plugin) |
CPluginBase (const char *name) | |
PPluginModule | get_module () const |
unsigned | get_priority () const |
bool | has_property (const char *property) const |
CPluginBase * | next_interface () |
void | set_module (const PPluginModule &module) |
void | set_priority (unsigned p) |
virtual | ~CPluginBase () |
![]() | |
void | add_parameter (const std::string &name, CParameter *param) |
void | check_parameters () |
CParamTranslator (const char *name) | |
virtual void | do_get_help_xml (CXMLElement &root) const |
const std::string | get_descr () const |
void | get_help (std::ostream &os) const |
void | get_help_xml (CXMLElement &root) const |
const char * | get_name () const |
void | get_short_help (std::ostream &os) const |
void | set_parameters (const CParsedOptions &options) |
virtual | ~CParamTranslator () |
Additional Inherited Members | |
![]() | |
static const char * | get_data_path_part () |
static const char * | get_type_path_part () |
![]() | |
CParamList & | get_parameters () |
This is tha base of all plugins that create "things", like filters, cost functions time step operatores and the like.
This template is the model for all factory plugins, i.e. plugins that create certain objects.
P | the object type created by the factory. |
Definition at line 49 of file factory.hh.
typedef to describe the product of the factory
Definition at line 54 of file factory.hh.
typedef std::shared_ptr<P > TFactory< P >::SharedProduct |
typedef for the shared version of the product
Definition at line 57 of file factory.hh.
typedef std::unique_ptr<P > TFactory< P >::UniqueProduct |
typedef for the unique version of the product
Definition at line 61 of file factory.hh.
initialise the plugin by the names
Definition at line 169 of file factory.hh.
|
virtual |
This function creates the object handled by this plugin It uses options to set its parameters and, if successfull, sets the init string of the object to params and returns the newly created object as a shared pointer.
options | the options to initialise the plugin |
params | original parameter string |
Definition at line 175 of file factory.hh.