21#ifndef mia_core_plugin_base_hh
22#define mia_core_plugin_base_hh
170template <
typename D,
typename T>
209template <
typename Plugin>
211 static constexpr bool value =
false;
The base class for all plug-ins.
void add_dependend_handlers(HandlerHelpMap &handler_map)
void add_property(const char *property)
CPluginBase * next_interface()
void append_interface(CPluginBase *plugin)
void set_priority(unsigned p)
void set_module(const PPluginModule &module)
bool has_property(const char *property) const
PPluginModule get_module() const
unsigned get_priority() const
CPluginBase(const char *name)
This class holds a set of properties.
The generic base for all plug-ins.
D PlugData
Typedef for the data type descriptor handled by this plug-in.
TPlugin(const char *name)
T PlugType
Typedef for the plugin type descriptor handled by this plug-in.
static const char * get_type_path_part()
const std::string get_long_name() const
static const char * get_data_path_part()
virtual void get_help(std::ostream &os) const
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
#define EXPORT_CORE
Macro to manage Visual C++ style dllimport/dllexport.
#define NS_MIA_END
conveniance define to end the mia namespace
std::shared_ptr< CPluginModule > PPluginModule
std::map< std::string, const CPluginHandlerBase * > HandlerHelpMap
A map that is used to collect the plug-in handlers used in a program.
EXPORT_CORE const std::string plugin_help
standard string to print out help in the factory plug-in handler
static constexpr bool value