Commit 7502c471 authored by Jan Möbius's avatar Jan Möbius

Updates to plugin programming

git-svn-id: http://www.openflipper.org/svnrepo/OpenFlipper/branches/Free@11006 383ad7c9-94d9-4d36-a494-682f7c89f535
parent 8820f3bf
......@@ -15,28 +15,28 @@
*
* \section plugin_sec Plugin Basics
*
* As mentioned above Openflipper is a plugin based system. It uses the qt plugin implementation to
* As mentioned above OpenFlipper is a plugin based system. It uses the QT plugin implementation to
* load and unload plugins at runtime. Every algorithm should be added as one of these plugins.
*
* The plugins have to be created as .so (or under windows : .dll) files which should be symlinked or
* copied to the Plugin subfolder. OpenFlipper distinguishes between 32/64-bit plugin versions and
* max or dbg (release/debug) versions. So the compiled plugins have to reside in the right subdir of
* Plugins. The Plugins are loaded on startup of the application (they may also be loaded at runtime
* later).
* copied to the Plugin sub folder. The cmake build system automatically places the plugins in the right folders
* on all supported platforms. The Plugins are then loaded on startup of the core application
* (they may also be loaded at runtime later).
*
* \section plugin_prog_sec Plugin programming
* \section plugin_prog_sec Plugin Programming
* The interface between the core and the plugins is managed via simple interfaces based on the signal/slot
* metaphor of qt. Your plugins have to be derived from these interfaces. You dont have to implement
* all functions or signals of the interfaces you include. This has only to be done for the BaseInterface
* which must be implemented by every plugin. See the BaseInterface Documentation for details.
* metaphor of QT. Your plugins have to be derived from these interfaces. You don't have to implement
* all functions or signals of the interfaces you include. The BaseInterface has to be included in every
* plugin. See the \ref baseInterfacePage "BaseInterface Documentation" for details.
*
* Unimplemented functions will be left unconnected from the core and wont have any impact on the applications
* Unimplemented functions will be left unconnected from the core and won't have any impact on the applications
* speed or stability. As stated above, every plugin has to be derived from the BaseInterface. This is the
* basic factory which makes the core aware of the plugin. The name and the description of the plugin is
* exported via the baseinterface. The initialization of each plugin is done via this interface too.
* See \ref dataFlow for an overview of OpenFlipper's data flow and interface function calls.
* basic factory which makes the core aware of the plugin. The BaseInterface::name() and the
* BaseInterface::description() of the plugin is exported via the BaseInterface. The initialization of each
* plugin is done via this interface too.
* See \ref baseInterfacePluginInitialization for an overview of OpenFlipper's startup and initialization calls.
*
* After this interface of the plugin is sucessfully processed all other interfaces will be initialized
* After this interface of the plugin is successfully processed all other interfaces will be initialized
* and connected to the core. For details about the individual interfaces see their documentation.
* \ref interfaces
*
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment