85 lines
3.3 KiB
Turtle
85 lines
3.3 KiB
Turtle
@prefix doap: <http://usefulinc.com/ns/doap#> .
|
|
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
|
|
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
|
|
@prefix morph: <http://lv2plug.in/ns/ext/morph#> .
|
|
@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/morph>
|
|
a owl:Ontology ;
|
|
rdfs:seeAlso <morph.h> ,
|
|
<lv2-morph.doap.ttl> ;
|
|
lv2:documentation """
|
|
<p>This extension defines two port types: morph:MorphPort, which has a
|
|
host-configurable type, and morph:AutoMorphPort, which may automatically change
|
|
type when a MorphPort's type is changed. These ports always have a default
|
|
type and work normally work in hosts that are unaware of this extension. Thus,
|
|
this extension provides a backwards compatibility mechanism which allows
|
|
plugins to use new port types but gracefully fall back to a default type in
|
|
hosts that do not support them.</p>
|
|
|
|
<p>This extension only defines port types and properties for describing morph
|
|
ports. The actual run-time switching is done via the opts:interface API.</p>
|
|
""" .
|
|
|
|
morph:MorphPort
|
|
a rdfs:Class ,
|
|
owl:Class ;
|
|
rdfs:subClassOf lv2:Port ;
|
|
rdfs:label "Morph Port" ;
|
|
lv2:documentation """
|
|
<p>Ports of this type MUST have another type which defines the default buffer
|
|
format (e.g. lv2:ControlPort) but can be dynamically changed to a different
|
|
type in hosts that support opts:interface.</p>
|
|
|
|
<p>The host may change the type of a MorphPort by setting its morph:currentType
|
|
with LV2_Options_Interface::set(). If the plugin has any morph:AutoMorphPort
|
|
ports, the host MUST check their types after changing any port type since they
|
|
may have changed.</p> """ .
|
|
|
|
morph:AutoMorphPort
|
|
a rdfs:Class ,
|
|
owl:Class ;
|
|
rdfs:subClassOf lv2:Port ;
|
|
rdfs:label "Auto Morph Port" ;
|
|
lv2:documentation """
|
|
<p>Ports of this type MUST have another type which defines the default buffer
|
|
format (e.g. lv2:ControlPort) but may dynamically change types based on the
|
|
configured types of any morph:MorphPort ports on the same plugin instance.</p>
|
|
|
|
<p>The type of a port may only change in response to a host call to
|
|
LV2_Options_Interface::set(). Whenever any port type on the instance changes,
|
|
the host MUST check the type of all morph:AutoMorphPort ports with
|
|
LV2_Options_Interface::get() before calling run() again, since they may have
|
|
changed. If the type of any port is zero, it means the current configuration
|
|
is invalid and the plugin may not be run (unless that port is
|
|
lv2:connectionOptional and connected to NULL).</p>
|
|
|
|
<p>This is mainly useful for outputs whose type depends on the type of
|
|
corresponding inputs.</p>
|
|
""" .
|
|
|
|
morph:supportsType
|
|
a rdf:Property ,
|
|
owl:ObjectProperty ;
|
|
rdfs:domain morph:MorphPort ;
|
|
rdfs:label "supports type" ;
|
|
lv2:documentation """
|
|
<p>Indicates that a port supports being switched to a certain type. A
|
|
MorphPort MUST list each type it supports being switched to in the plugin data
|
|
using this property.</p>
|
|
""" .
|
|
|
|
morph:currentType
|
|
a rdf:Property ,
|
|
opts:Option ,
|
|
owl:ObjectProperty ;
|
|
rdfs:domain morph:MorphPort ;
|
|
rdfs:label "current type" ;
|
|
lv2:documentation """
|
|
<p>The currently active type of the port. This is for dynamic use as an option
|
|
and SHOULD NOT be listed in the static plugin data.</p>
|
|
""" .
|