PluginConcept » History » Version 3

J. Moringen, 05/20/2011 12:16 PM
extended example

1 2 J. Moringen
h1. Overview
2 1 J. Wienke
3 2 J. Moringen
* Plugins are loaded at initialization time
4 2 J. Moringen
** This means, registration of provided converters and connectors happens during initialization
5 2 J. Moringen
** This is required in order for RSB to be able inquire about capabilities and configuration of converters and connectors
6 2 J. Moringen
* Selection and loading of plugins is configured using the [[Configuration|usual mechanism]]
7 2 J. Moringen
** An implementation-language-specific section configures
8 2 J. Moringen
*** Means of locating plugins (e.g. searchpath, classpath, PYTHONPATH)
9 2 J. Moringen
*** Names of the plugins that should be loaded
10 2 J. Moringen
11 2 J. Moringen
h2. C++ Plugins
12 2 J. Moringen
13 2 J. Moringen
* Are shared objects
14 2 J. Moringen
* Configuration via options
15 2 J. Moringen
** @plugins.c++.path@: Colon separated list of directories in which expanded (e.g. @rsbspread DIRECTORY/librsbspread.so@ on linux) plugin libraries will be searched
16 2 J. Moringen
** @plugins.c++.libraries@: Colon separated list of plugin names (no including prefixes like "lib" of suffixes like ".so" or ".dll")
17 2 J. Moringen
18 3 J. Moringen
Configuration Examples:
19 2 J. Moringen
<pre>
20 3 J. Moringen
[plugins.cpp]
21 1 J. Wienke
path = /vol/vampire/lib:/vol/cor/lib
22 1 J. Wienke
libraries = rsbspread:rsbvampire     # no filetype suffix
23 3 J. Moringen
</pre>
24 3 J. Moringen
25 3 J. Moringen
<pre>
26 3 J. Moringen
RSB_PLUGINS_CPP_PATH=/vol/cor/lib
27 2 J. Moringen
</pre>