Relacs Core Library  0.9.8
Classes | Namespaces | Macros
plugins.h File Reference
#include <string>
#include <vector>
#include <relacs/strqueue.h>
Include dependency graph for plugins.h:
This graph shows which files directly or indirectly include this file:

Classes

class  Plugins
 

Namespaces

 relacs
 

Macros

#define addPlugin(pluginClass, pluginSet, pluginType)
 

Macro Definition Documentation

#define addPlugin (   pluginClass,
  pluginSet,
  pluginType 
)
Value:
\
void* create ## pluginClass( void ) \
{ \
return new pluginClass(); \
} \
\
class Reg ## pluginClass : public Plugins \
{ \
public: \
Reg ## pluginClass() \
{ \
add( string( # pluginClass ) + "[" + # pluginSet + "]", \
pluginType, create ## pluginClass, VERSION ); \
} \
\
~Reg ## pluginClass() \
{ \
erase( string( # pluginClass ) + "[" + # pluginSet + "]", pluginType ); \
} \
}; \
\
Reg ## pluginClass init ## pluginClass;
int pluginType
Definition: deviceselector.cc:40

Makes a class a plugin that is managed by Plugins.

Parameters
[in]pluginClassthe class name
[in]pluginSetthe name of the plugin set
[out]pluginTypethe type of the plugin