aboutsummaryrefslogtreecommitdiffstats
path: root/ext/ui-event.lv2/ui-event.ttl
diff options
context:
space:
mode:
Diffstat (limited to 'ext/ui-event.lv2/ui-event.ttl')
-rw-r--r--ext/ui-event.lv2/ui-event.ttl84
1 files changed, 84 insertions, 0 deletions
diff --git a/ext/ui-event.lv2/ui-event.ttl b/ext/ui-event.lv2/ui-event.ttl
new file mode 100644
index 0000000..0abd09c
--- /dev/null
+++ b/ext/ui-event.lv2/ui-event.ttl
@@ -0,0 +1,84 @@
+# In-process UI extension
+#
+# Copyright (C) 2010-2011 Lars Luthman <mail@larsluthman.net>
+#
+# based on lv2.ttl, which is
+# Copyright (C) 2006-2008 Steve Harris, Dave Robillard
+#
+# This extension should be considered a replacement for the earlier
+# in-process UI extension with the URI <http://lv2plug.in/ns/extensions/ui>.
+# Hosts and plugins that used that extension should use this one instead.
+# The earlier in-process UI extension is not compatible with LV2 revision 3
+# and later and may break in subtle ways.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included
+# in all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+# OTHER DEALINGS IN THE SOFTWARE.
+
+@prefix ui: <http://lv2plug.in/ns/ext/ui#>.
+@prefix ev: <http://lv2plug.in/ns/ext/event#>.
+@prefix uiev: <http://lv2plug.in/ns/ext/ui-event#>.
+@prefix lv2: <http://lv2plug.in/ns/lv2core#>.
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
+@prefix doap: <http://usefulinc.com/ns/doap#>.
+@prefix foaf: <http://xmlns.com/foaf/0.1/>.
+
+<http://lv2plug.in/ns/ext/ui-event> a lv2:Specification ;
+ doap:license <http://usefulinc.com/doap/licenses/mit>;
+ doap:name "LV2 UI Event port protocol" ;
+ doap:release [
+ doap:revision "0.1" ;
+ doap:created "2011-03-26"
+ ];
+ doap:maintainer [
+ a foaf:Person;
+ foaf:name "Lars Luthman";
+ foaf:mbox <mailto:mail@larsluthman.net>;
+ ];
+ lv2:documentation """
+This extension defines an ui:PortProtocol for passing events (MIDI, OSC,
+etc) between LV2 plugins and UIs.
+""".
+
+uiev:events a ui:PortProtocol;
+ rdfs:label "Event buffer";
+ lv2:documentation """
+<ol>
+<li>This PortProtocol is valid for ports with the type ev:EventPort.</li>
+<li>The host MUST call port_event() whenever there is an event in an input
+ port prior to the plugin instance's run() function is called, and whenever
+ there is an event in an output port after run() has been called. The
+ UI MUST NOT depend on the timing of the calls. However, the host MUST
+ do the calls in the same order that the events occur in. The host is
+ allowed and encouraged to bundle multiple events into a single port_event()
+ call if it improves performance.</li>
+<li>The data buffer passed to port_event() is an LV2_Event_Buffer, as specified
+ in the Event extension. The stamp_type MUST be ignored. The frames and
+ subframes fields of every event in the buffer MUST be ignored. Events
+ with type 0 (reference counted events) MUST be ignored.</li>
+<li>The data buffer passed to write_event() is an LV2_Event_Buffer, as specified
+ in the Event extension. The stamp_type MUST be ignored. The frames and
+ subframes fields of every event in the buffer MUST be ignored. Events
+ with type 0 MUST NOT be written to the buffer.</li>
+<li>The host MUST pass all the events in the buffer to the plugin instance's
+ event port in the same order, but the plugin and the UI MUST NOT depend on
+ the timing of the events, or on whether they are all sent to the plugin in
+ the same run() call or distributed over multiple calls.</li>
+<li>The data pointer in the LV2_Feature object for this feature should be
+ NULL.</li>
+""".