103 lines
3.9 KiB
Turtle
103 lines
3.9 KiB
Turtle
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
|
|
@prefix opts: <http://lv2plug.in/ns/ext/options#> .
|
|
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
|
|
<http://lv2plug.in/ns/ext/options>
|
|
a owl:Ontology ;
|
|
rdfs:seeAlso <options.h> ,
|
|
<lv2-options.doap.ttl> ;
|
|
lv2:documentation """
|
|
<p>This extension defines a facility for <q>options</q>, which are dynamic
|
|
properties that may be changed at run time.</p>
|
|
|
|
<p>There are two facilities for passing options to an instance: opts:options
|
|
allows passing options at instantiation time, and the opts:interface interface
|
|
allows options to be dynamically set and retrieved after instantiation.</p>
|
|
|
|
<p>Note that this extension is only for allowing hosts to configure plugins,
|
|
and is not a <q>live</q> control mechanism. For real-time control, use
|
|
event-based control via an atom:AtomPort with an atom:Sequence buffer.</p>
|
|
|
|
<p>Instances may indicate they <q>require</q> an option with the
|
|
opts:requiredOption property, or that they optionally <q>support</q> an option
|
|
with the opts:supportedOption property.</p>
|
|
""" .
|
|
|
|
opts:Option
|
|
a rdfs:Class ;
|
|
rdfs:label "Option" ;
|
|
rdfs:subClassOf rdf:Property ;
|
|
lv2:documentation """
|
|
<p>A property intended to be used as a static option for an instance.</p>
|
|
|
|
<p>It is not required for a property to explicitly be an Option in order to be
|
|
used as such. However, properties which are primarily intended for use as
|
|
options, or are at least particularly useful as options, should be explicitly
|
|
given this type for documentation purposes, and to assist hosts in discovering
|
|
option definitions.</p>
|
|
""" .
|
|
|
|
opts:interface
|
|
a lv2:ExtensionData ;
|
|
lv2:documentation """
|
|
<p>An interface (LV2_Options_Interface) for dynamically setting and getting
|
|
options. Note this is intended for use by the host for configuring plugins
|
|
only, and and is <em>not</em> a <q>live</q> plugin control mechanism.</p>
|
|
|
|
<p>The plugin data file should describe this like so:</p>
|
|
<pre class="turtle-code">
|
|
@prefix opts: <http://lv2plug.in/ns/ext/options#> .
|
|
|
|
<plugin>
|
|
a lv2:Plugin ;
|
|
lv2:extensionData opts:interface .
|
|
</pre>
|
|
""" .
|
|
|
|
opts:options
|
|
a lv2:Feature ;
|
|
rdfs:label "options" ;
|
|
lv2:documentation """
|
|
<p>The feature used to provide options to an instance.</p>
|
|
|
|
<p>To implement this feature, hosts MUST pass an LV2_Feature to the appropriate
|
|
instantiate method with this URI and data pointed to an array of
|
|
LV2_Options_Option terminated by an element with both key and value set to
|
|
zero. The instance should cast this data pointer to <code>const
|
|
LV2_Options_Option*</code> and scan the array for any options of interest. The
|
|
instance MUST NOT modify the options array in any way.</p>
|
|
|
|
<p>Note that requiring this feature may reduce the number of compatible hosts.
|
|
Unless some options are strictly required by the instance, this feature SHOULD
|
|
be listed as a lv2:optionalFeature.</p>
|
|
""" .
|
|
|
|
opts:requiredOption
|
|
a rdf:Property ,
|
|
owl:ObjectProperty ;
|
|
rdfs:range rdf:Property ;
|
|
rdfs:label "required option" ;
|
|
lv2:documentation """
|
|
<p>An option required by the instance to function at all. The host MUST pass a
|
|
value for the specified option via opts:options in order to create an
|
|
instance.</p>
|
|
|
|
<p>Note that use of this property may reduce the number of compatible hosts.
|
|
Wherever possible, it is better to list options with opts:supportedOption and
|
|
fall back to a reasonable default value if it is not provided.</p>
|
|
""" .
|
|
|
|
opts:supportedOption
|
|
a rdf:Property ,
|
|
owl:ObjectProperty ;
|
|
rdfs:range rdf:Property ;
|
|
rdfs:label "supported option" ;
|
|
lv2:documentation """
|
|
<p>An option supported or <q>understood</q> by the instance. The host SHOULD
|
|
provide a value for the specified option if one is known, or provide the user
|
|
an opportunity to specify one if one is Indicates that the instance host MUST
|
|
pass a value for the specified option in order to instantiate the instance.</p>
|
|
""" .
|