From c7c21e656f8b49ac1ab48451c9f45348c457e80a Mon Sep 17 00:00:00 2001 From: Christian Thaeter Date: Wed, 11 Jul 2007 13:01:54 +0200 Subject: [PATCH] short text about plugins --- wiki/support_library.html | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/wiki/support_library.html b/wiki/support_library.html index d18954c4e..c26216970 100644 --- a/wiki/support_library.html +++ b/wiki/support_library.html @@ -1691,6 +1691,15 @@ DAMAGE. <html><sub><a href="javascript:;" onclick="scrollAnchorVisible('Top',null, event)">[Top]</sub></a></html> ***/ +
+
Cinelerra3 will use a very simple and language neutral plugin system. It focuses easy and independent distribution of plugins and small specific interfaces. Ultimate flexibility is of second concern.
+
+Plugin interfaces are simple C structs with some metadata at the beginning and function prototypes added at the end. Each function prototype has a version number appended. This allows to extend existing interfaces, but not alter functions which are already present. With some macros we can map simple function names to versioned function names. Thus plugins may break when using the 'generic' names while compiling, the plugin should be fixed to use the new version then, while compiled plugins will stay compatible.
+
+This fosters the idea of maintaining free plugins and fixing them when the source is available, while still having the ability to deploy packaged binary plugins which will work with newer interface versions.
+
+
+
/***
 |''Name:''|RSSReaderPlugin|