From ed78bbe5ba12be1f9bcc736f14c51da6b4f639f3 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 8 Feb 2012 04:56:24 +0000 Subject: Rearrange tree so top level can be used as an include path for standard style LV2 includes. --- lv2/lv2plug.in/ns/ext/presets/ext.pc.in | 1 + lv2/lv2plug.in/ns/ext/presets/manifest.ttl | 9 ++ lv2/lv2plug.in/ns/ext/presets/presets.ttl | 148 +++++++++++++++++++++++++++++ lv2/lv2plug.in/ns/ext/presets/waf | 1 + lv2/lv2plug.in/ns/ext/presets/wscript | 1 + 5 files changed, 160 insertions(+) create mode 120000 lv2/lv2plug.in/ns/ext/presets/ext.pc.in create mode 100644 lv2/lv2plug.in/ns/ext/presets/manifest.ttl create mode 100644 lv2/lv2plug.in/ns/ext/presets/presets.ttl create mode 120000 lv2/lv2plug.in/ns/ext/presets/waf create mode 120000 lv2/lv2plug.in/ns/ext/presets/wscript (limited to 'lv2/lv2plug.in/ns/ext/presets') diff --git a/lv2/lv2plug.in/ns/ext/presets/ext.pc.in b/lv2/lv2plug.in/ns/ext/presets/ext.pc.in new file mode 120000 index 0000000..03dd044 --- /dev/null +++ b/lv2/lv2plug.in/ns/ext/presets/ext.pc.in @@ -0,0 +1 @@ +../../../../../ext.pc.in \ No newline at end of file diff --git a/lv2/lv2plug.in/ns/ext/presets/manifest.ttl b/lv2/lv2plug.in/ns/ext/presets/manifest.ttl new file mode 100644 index 0000000..51985ab --- /dev/null +++ b/lv2/lv2plug.in/ns/ext/presets/manifest.ttl @@ -0,0 +1,9 @@ +@prefix lv2: . +@prefix rdfs: . + + + a lv2:Specification ; + lv2:minorVersion 2 ; + lv2:microVersion 2 ; + rdfs:seeAlso . + diff --git a/lv2/lv2plug.in/ns/ext/presets/presets.ttl b/lv2/lv2plug.in/ns/ext/presets/presets.ttl new file mode 100644 index 0000000..e11210a --- /dev/null +++ b/lv2/lv2plug.in/ns/ext/presets/presets.ttl @@ -0,0 +1,148 @@ +# LV2 Presets Extension +# Copyright 2009-2011 David Robillard +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THIS SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +@prefix dcs: . +@prefix doap: . +@prefix foaf: . +@prefix lv2: . +@prefix owl: . +@prefix pset: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . + + + a foaf:Person ; + foaf:name "David Robillard" ; + foaf:homepage ; + foaf:mbox ; + rdfs:seeAlso . + + + a lv2:Specification ; + doap:license ; + doap:name "LV2 Presets" ; + doap:shortdesc "Presets for LV2 plugins. " ; + doap:maintainer ; + doap:release [ + doap:revision "2.2" ; + doap:created "2011-11-21" ; + doap:file-release ; + dcs:blame ; + dcs:changeset [ + dcs:item [ + rdfs:label "Update packaging." + ] , [ + rdfs:label "Improve documentation." + ] + ] + ] , [ + doap:revision "2.0" ; + doap:created "2010-10-04" ; + doap:file-release ; + dcs:blame ; + dcs:changeset [ + dcs:item [ + rdfs:label "Initial release." + ] + ] + ] ; + lv2:documentation """ +

This extension describes a format for presets (i.e. named sets of control +values) for LV2 plugins. The structure of pset:Preset is deliberately very +similar to the description of a plugin and can be thought of as a plugin +overlay. For example:

+ +
+@prefix eg: <http://example.org/> .
+
+eg:mypreset
+    a pset:Preset ;
+    rdfs:label "One louder" ;
+    pset:appliesTo eg:myplugin ;
+    lv2:port [
+        lv2:symbol "volume1" ;
+        pset:value 11
+    ] , [
+        lv2:symbol "volume2" ;
+        pset:value 11.0
+    ] .
+
+ +

Presets may be defined in any bundles, including the plugin's bundle, +separate third party preset bundles, or user-created preset bundles created by +hosts. The manifest.ttl of a bundle containing presets should list the +presets like so:

+ +
+eg:mypreset
+    a              pset:Preset ;
+    pset:appliesTo eg:myplugin ;
+    rdfs:seeAlso   <mypreset.ttl> .
+
+ +

This extension does not define a dynamic mechanism for changing plugin +presets for plugins that require such a facility, but may be extended to do +so.

+""" . + +pset:Preset + a rdfs:Class ; + rdfs:subClassOf lv2:PluginBase ; + rdfs:label "LV2 Preset" ; + rdfs:subClassOf [ + a owl:Restriction ; + owl:onProperty rdfs:label ; + owl:someValuesFrom xsd:string ; + rdfs:comment "A Preset MUST have at least one string rdfs:label." + ] ; + rdfs:comment """ +A Preset for an LV2 Plugin. A preset can be considered an "overlay" on a +Plugin. Rather than attempting to define all valid predicates for a Preset +(which is not possible since presets may need to specify values for things +defined in other extensions), the presets extension simply provides this +class which can be augmented with any data in the exact same fashion as the +definition of a Plugin. + +A Preset SHOULD have at least one pset:appliesTo property. +Each Port on a Preset MUST have at least a lv2:symbol property and a +pset:value property. +""" . + +pset:appliesTo + a rdf:Property ; + rdfs:domain pset:Preset ; + rdfs:range lv2:Plugin ; + rdfs:label "Applies to" ; + rdfs:comment """ +Specifies the Plugin(s) a Preset may be applied to. When a Preset applies +to a Plugin, that Preset SHOULD have ports for every control port on that +plugin, each of which SHOULD have a pset:value property. If the Preset is +missing ports, or refers to ports which do not exist on the Plugin, then +the host SHOULD apply all the values in the preset that do match the Plugin. + +The Preset MAY have any other values that should be applied to the Plugin +in some way. The host SHOULD simply ignore any values on a Preset it does +not understand. +""" . + +pset:value + a rdf:Property ; + rdfs:domain lv2:Port ; + rdfs:label "Has value" ; + rdfs:comment """ +Specifies the value of a Port on some Preset. This property is used +in a similar way to e.g. lv2:default. +""" . diff --git a/lv2/lv2plug.in/ns/ext/presets/waf b/lv2/lv2plug.in/ns/ext/presets/waf new file mode 120000 index 0000000..5235032 --- /dev/null +++ b/lv2/lv2plug.in/ns/ext/presets/waf @@ -0,0 +1 @@ +../../../../../waf \ No newline at end of file diff --git a/lv2/lv2plug.in/ns/ext/presets/wscript b/lv2/lv2plug.in/ns/ext/presets/wscript new file mode 120000 index 0000000..7e2c01b --- /dev/null +++ b/lv2/lv2plug.in/ns/ext/presets/wscript @@ -0,0 +1 @@ +../../../../../ext.wscript \ No newline at end of file -- cgit v1.2.1