diff options
Diffstat (limited to 'lv2/lv2plug.in/ns/ext/worker')
-rw-r--r-- | lv2/lv2plug.in/ns/ext/worker/worker.ttl | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/lv2/lv2plug.in/ns/ext/worker/worker.ttl b/lv2/lv2plug.in/ns/ext/worker/worker.ttl index ae6d81b..517aabb 100644 --- a/lv2/lv2plug.in/ns/ext/worker/worker.ttl +++ b/lv2/lv2plug.in/ns/ext/worker/worker.ttl @@ -30,16 +30,33 @@ doap:name "LV2 Worker" ; doap:shortdesc "Support for a non-realtime plugin worker method." ; lv2:documentation """ +<p>This extension allows plugins to have a non-realtime worker method, with +thread sychronisation and communication issues handled by the host. This +allows plugins to perform non-realtime actions (such as loading files) using a +simple and portable API without having to worry about the complexities of +multi-threading.</p> + +<p>Because the worker thread is implemented by the host, many plugins can share +the same thread and communication buffers, which reduces bloat and fixed +per-plugin buffer size limitations. The host has the power to implement +threads in a suitable way, while plugins are simpler and thus less +error-prone.</p> + +<p>This interface is designed to gracefully handle single-threaded synchronous +execution, in which case the host may simply run all work immediately. This +makes it possible for the same plugin code to work with sample accuracy for +offline rendering, or in real-time with non-real-time work taking place in a +separate thread.</p> """ . work:Interface a rdfs:Class ; rdfs:subClassOf lv2:ExtensionData ; lv2:documentation """ -<p>A structure (LV2_Worker_Interface) which contains the worker method to be -called by the host. In order to support this extension, the plugin must return -a valid LV2_Worker_Interface from LV2_Descriptor::extension_data() when it is -called with URI LV2_WORKER__Interface.</p> +<p>The interface provided by the plugin to implement a worker. To implement +this extension, the plugin must return a valid LV2_Worker_Interface from +LV2_Descriptor::extension_data() when it is called with URI +LV2_WORKER__Interface.</p> <p>The plugin data file should describe this like so:</p> <pre class="turtle-code"> |