CPluginBase Class Reference

The base class for all plug-ins. More...

#include <mia/core/plugin_base.hh>

Inheritance diagram for CPluginBase:
[legend]
Collaboration diagram for CPluginBase:
[legend]

Public Member Functions

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
 
CPluginBasenext_interface ()
 
void set_module (const PPluginModule &module)
 
void set_priority (unsigned p)
 
virtual ~CPluginBase ()
 
- Public Member Functions inherited from CParamTranslator
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

- Protected Member Functions inherited from CParamTranslator
CParamListget_parameters ()
 

Detailed Description

The base class for all plug-ins.

The base class for all plug-ins. It supports handling parameters and a provides a help interface.

Definition at line 64 of file plugin_base.hh.

Constructor & Destructor Documentation

◆ CPluginBase()

CPluginBase::CPluginBase ( const char *  name)

The constructor initialises the plug-in with its name and sets its link-up to nil ant initialises its parameter map.

Parameters
name

◆ ~CPluginBase()

virtual CPluginBase::~CPluginBase ( )
virtual

this destructur exists for the sole purpouse to ensure a virtual destructor for all plug-ins.

Member Function Documentation

◆ add_dependend_handlers()

void CPluginBase::add_dependend_handlers ( HandlerHelpMap handler_map)

Add all plugin handlers that may be called by this plugin

Parameters
[in,out]handler_map

◆ add_property()

void CPluginBase::add_property ( const char *  property)

Add a porperty to the map of supported properties

Parameters
propertya named property

◆ append_interface()

void CPluginBase::append_interface ( CPluginBase plugin)

link up another plug-in in order to be able to put several plug-ins of the same type into the same dynamic library

◆ get_module()

PPluginModule CPluginBase::get_module ( ) const
Returns
the module

Referenced by TFactory< TTransformCreator< Transform > >::create().

◆ get_priority()

unsigned CPluginBase::get_priority ( ) const
Returns
the priority of the plug-in

◆ has_property()

bool CPluginBase::has_property ( const char *  property) const
Parameters
propertya named property
Returns
true if the property is supported, false otherwise

◆ next_interface()

CPluginBase* CPluginBase::next_interface ( )
Returns
a pointer to the next plug-in, or NULL, if it doesn't exist

◆ set_module()

void CPluginBase::set_module ( const PPluginModule module)

set the shared modules containing the code of this plugin This enshures that the modules is not unloaded while the plug-in still exists and needs to call its destructor whos code resides in the module.

Parameters
module

◆ set_priority()

void CPluginBase::set_priority ( unsigned  p)

Set the plug-in priority, if two plug-ins of the same type and name are loaded, then the one with the higher priority is kept.

Parameters
ppriority of this plugin

The documentation for this class was generated from the following file: