ls1-MarDyn
ls1-MarDyn molecular dynamics code
|
Plugin Factory. More...
#include <PluginFactory.h>
Public Member Functions | |
void | registerPlugin (createInstanceFunc *createInstance) |
Register an output plugin. More... | |
void | registerDefaultPlugins () |
Register a plugin. More... | |
std::vector< std::string > | getPluginNames () |
Get all names of registered plugins. | |
T * | create (std::string pluginname) |
Create a new instance of plugin. | |
long | enablePlugins (std::list< PluginBase * > &_plugins, XMLfileUnits &xmlconfig, std::string category, Domain *_domain) |
void | registerDefaultPlugins () |
Register all default plugins with base PluginBase. More... | |
long | enablePlugins (std::list< PluginBase * > &_plugins, XMLfileUnits &xmlconfig, std::string category, Domain *_domain) |
Enable selected plugins. | |
Plugin Factory.
Provides a common interface to register plugins based on the template given as parameter. The interface must include the following method:
Also each plugin has to implement the following static method:
Plugins are registered in the PluginFactory constructor using the REGISTER_PLUGIN(NAME) macro.
void PluginFactory< PluginBase >::registerDefaultPlugins | ( | ) |
Register all default plugins with base PluginBase.
createInstance | pointer to a function returning an instance of the plugin object. |
void PluginFactory< T >::registerDefaultPlugins | ( | ) |
Register a plugin.
createInstance | pointer to a function returning an instance of the plugin object. |
|
inline |
Register an output plugin.
createInstance | pointer to a function returning an instance of the plugin object. |