TPlugin< D, T > Class Template Reference

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

#include <mia/core/plugin_base.hh>

Inheritance diagram for TPlugin< D, T >:
[legend]
Collaboration diagram for TPlugin< D, T >:
[legend]

Public Types

typedef D PlugData
 Typedef for the data type descriptor handled by this plug-in. More...
 
typedef T PlugType
 Typedef for the plugin type descriptor handled by this plug-in. More...
 

Public Member Functions

virtual void get_help (std::ostream &os) const
 
const std::string get_long_name () const
 
 TPlugin (const char *name)
 
- Public Member Functions inherited from CPluginBase
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 ()
 

Static Public Member Functions

static const char * get_data_path_part ()
 
static const char * get_type_path_part ()
 

Additional Inherited Members

- Protected Member Functions inherited from CParamTranslator
CParamListget_parameters ()
 

Detailed Description

template<typename D, typename T>
class TPlugin< D, T >

The generic base for all plug-ins.

Templated plugin base class. The classes D and T must define a static const char *data_descr and static const char *type_descr respectively. The combination D::data_descr and T::type_descr is will be part of the plugin search path.

Template Parameters
Ddata type descriptior
Tplugin type descriptor

Definition at line 170 of file plugin_base.hh.

Member Typedef Documentation

◆ PlugData

template<typename D, typename T>
typedef D TPlugin< D, T >::PlugData

Typedef for the data type descriptor handled by this plug-in.

Definition at line 173 of file plugin_base.hh.

◆ PlugType

template<typename D, typename T>
typedef T TPlugin< D, T >::PlugType

Typedef for the plugin type descriptor handled by this plug-in.

Definition at line 176 of file plugin_base.hh.

Constructor & Destructor Documentation

◆ TPlugin()

template<typename D, typename T>
TPlugin< D, T >::TPlugin ( 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

Member Function Documentation

◆ get_data_path_part()

template<typename D, typename T>
static const char* TPlugin< D, T >::get_data_path_part ( )
static

◆ get_help()

template<typename D, typename T>
virtual void TPlugin< D, T >::get_help ( std::ostream &  os) const
virtual

Write a help regarding the plugin to the output stream

Parameters
os

◆ get_long_name()

template<typename D, typename T>
const std::string TPlugin< D, T >::get_long_name ( ) const
Returns
the long name of the plug in consisting of its name, its type, and data descriptors

◆ get_type_path_part()

template<typename D, typename T>
static const char* TPlugin< D, T >::get_type_path_part ( )
static

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