aboutsummaryrefslogtreecommitdiff
path: root/widgets.ttl
diff options
context:
space:
mode:
Diffstat (limited to 'widgets.ttl')
-rw-r--r--widgets.ttl168
1 files changed, 168 insertions, 0 deletions
diff --git a/widgets.ttl b/widgets.ttl
new file mode 100644
index 0000000..df61962
--- /dev/null
+++ b/widgets.ttl
@@ -0,0 +1,168 @@
+# Copyright (c) 2018 Hanspeter Portner (dev@open-music-kontrollers.ch)
+#
+# This is free software: you can redistribute it and/or modify
+# it under the terms of the Artistic License 2.0 as published by
+# The Perl Foundation.
+#
+# This source is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# Artistic License 2.0 for more details.
+#
+# You should have received a copy of the Artistic License 2.0
+# along the source as a COPYING file. If not, obtain it from
+# http://www.perlfoundation.org/artistic_license_2_0.
+
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix doap: <http://usefulinc.com/ns/doap#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
+@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
+@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
+@prefix state: <http://lv2plug.in/ns/ext/state#> .
+@prefix patch: <http://lv2plug.in/ns/ext/patch#> .
+@prefix bufsz: <http://lv2plug.in/ns/ext/buf-size#> .
+@prefix rsz: <http://lv2plug.in/ns/ext/resize-port#> .
+@prefix opts: <http://lv2plug.in/ns/ext/options#> .
+@prefix ui: <http://lv2plug.in/ns/extentions/ui#> .
+@prefix units: <http://lv2plug.in/ns/extensions/units#> .
+
+@prefix lic: <http://opensource.org/licenses/> .
+@prefix omk: <http://open-music-kontrollers.ch/ventosus#> .
+@prefix proj: <http://open-music-kontrollers.ch/lv2/> .
+@prefix widgets: <http://open-music-kontrollers.ch/lv2/widgets#> .
+@prefix canvas: <http://open-music-kontrollers.ch/lv2/canvas#> .
+
+# Maintainer
+omk:me
+ a foaf:Person ;
+ foaf:name "Hanspeter Portner" ;
+ foaf:mbox <mailto:dev@open-music-kontrollers.ch> ;
+ foaf:homepage <http://open-music-kontrollers.ch> .
+
+# Project
+proj:widgets
+ a doap:Project ;
+ doap:maintainer omk:me ;
+ doap:name "Router Bundle" .
+
+# Parameters
+canvas:graph
+ a lv2:Parameter ;
+ rdfs:label "Graph" ;
+ rdfs:comment "set canvas graph" ;
+ rdfs:range atom:Tuple .
+canvas:aspectRatio
+ a lv2:Parameter ;
+ rdfs:label "Aspect ratio" ;
+ rdfs:comment "set aspect ratio" ;
+ rdfs:range atom:Float ;
+ lv2:minimum 0.25 ;
+ lv2:maximum 4.0 .
+canvas:mousePositionX
+ a lv2:Parameter ;
+ rdfs:label "Mouse position X" ;
+ rdfs:comment "set mouse position X" ;
+ rdfs:range atom:Float ;
+ lv2:minimum 0.0 ;
+ lv2:maximum 1.0 .
+canvas:mousePositionY
+ a lv2:Parameter ;
+ rdfs:label "Mouse position Y" ;
+ rdfs:comment "set mouse position Y" ;
+ rdfs:range atom:Float ;
+ lv2:minimum 0.0 ;
+ lv2:maximum 1.0 .
+canvas:mouseButtonLeft
+ a lv2:Parameter ;
+ rdfs:label "Mouse button left" ;
+ rdfs:comment "set mouse button left" ;
+ rdfs:range atom:Bool .
+canvas:mouseButtonMiddel
+ a lv2:Parameter ;
+ rdfs:label "Mouse button middel" ;
+ rdfs:comment "set mouse button middle" ;
+ rdfs:range atom:Bool .
+canvas:mouseButtonRight
+ a lv2:Parameter ;
+ rdfs:label "Mouse button right" ;
+ rdfs:comment "set mouse button right" ;
+ rdfs:range atom:Bool .
+canvas:mouseFocus
+ a lv2:Parameter ;
+ rdfs:label "Mouse focus" ;
+ rdfs:comment "set mouse focus" ;
+ rdfs:range atom:Bool .
+
+widgets:x
+ a lv2:Parameter ;
+ rdfs:label "X" ;
+ rdfs:comment "get x" ;
+ rdfs:range atom:Float ;
+ lv2:minimum 0.0 ;
+ lv2:maximum 1.0 .
+widgets:y
+ a lv2:Parameter ;
+ rdfs:label "Y" ;
+ rdfs:comment "get y" ;
+ rdfs:range atom:Float ;
+ lv2:minimum 0.0 ;
+ lv2:maximum 1.0 .
+
+# xy_pad
+widgets:xy_pad
+ a lv2:Plugin ,
+ lv2:ConverterPlugin ;
+ doap:name "Widgets XY Pad" ;
+ doap:license lic:Artistic-2.0 ;
+ lv2:project proj:widgets ;
+ lv2:requiredFeature urid:map, state:loadDefaultState, opts:options ;
+ lv2:optionalFeature lv2:isLive, lv2:hardRTCapable, state:threadSafeRestore ;
+ lv2:extensionData state:interface ;
+ opts:requiredOption ui:updateRate ;
+
+ lv2:port [
+ a lv2:InputPort ,
+ atom:AtomPort ;
+ atom:bufferType atom:Sequence ;
+ atom:supports patch:Message ;
+ lv2:index 0 ;
+ lv2:symbol "control" ;
+ lv2:name "Control" ;
+ lv2:designation lv2:control ;
+ ] , [
+ a lv2:OutputPort ,
+ atom:AtomPort ;
+ atom:bufferType atom:Sequence ;
+ atom:supports patch:Message ;
+ lv2:index 1 ;
+ lv2:symbol "notify" ;
+ lv2:name "Notify" ;
+ lv2:designation lv2:control ;
+ rsz:minimumSize 131072 ;
+ ] ;
+
+ patch:readable
+ canvas:graph ;
+
+ patch:writable
+ widgets:x ,
+ widgets:y ,
+ canvas:aspectRatio ,
+ canvas:mousePositionX ,
+ canvas:mousePositionY ,
+ canvas:mouseButtonLeft ,
+ canvas:mouseFocus ;
+
+ state:state [
+ widgets:x "0.5"^^xsd:float ;
+ widgets:y "0.5"^^xsd:float ;
+ canvas:aspectRatio "1.0"^^xsd:float ;
+ canvas:mousePositionX "0.5"^^xsd:float ;
+ canvas:mousePositionY "0.5"^^xsd:float ;
+ canvas:mouseButtonLeft false ;
+ canvas:mouseFocus false ;
+ ] .