aboutsummaryrefslogtreecommitdiffstats
path: root/lv2/port-props
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2022-07-07 18:59:32 -0400
committerDavid Robillard <d@drobilla.net>2022-07-17 18:14:00 -0400
commit1eccbe4355685b322194df72b5de2382d5290b3b (patch)
tree0677b5c2f577a5024c351a164527f4bdd91a639b /lv2/port-props
parentd4a970f6962dda28133290194832b726b566ddab (diff)
downloadlv2-1eccbe4355685b322194df72b5de2382d5290b3b.tar.xz
Rearrange source tree to be directly usable by dependants
This allows the LV2 source distribution to be used as an include path for compilers and an LV2_PATH for applications, at the expense of self-contained bundles. That's a nice idea, but it made LV2 itself weird and annoying to depend on. This rearranges things so that directories in the source tree correspond more closely to installation directories. To make this possible, the "aux" directory in the documentation output has been changed to "style", to avoid the reserved name "aux" on Windows.
Diffstat (limited to 'lv2/port-props')
-rw-r--r--lv2/port-props/manifest.ttl9
-rw-r--r--lv2/port-props/meson.build40
-rw-r--r--lv2/port-props/port-props.h53
-rw-r--r--lv2/port-props/port-props.meta.ttl202
-rw-r--r--lv2/port-props/port-props.ttl80
5 files changed, 0 insertions, 384 deletions
diff --git a/lv2/port-props/manifest.ttl b/lv2/port-props/manifest.ttl
deleted file mode 100644
index 45f598d..0000000
--- a/lv2/port-props/manifest.ttl
+++ /dev/null
@@ -1,9 +0,0 @@
-@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
-@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
-
-<http://lv2plug.in/ns/ext/port-props>
- a lv2:Specification ;
- lv2:minorVersion 1 ;
- lv2:microVersion 2 ;
- rdfs:seeAlso <port-props.ttl> .
-
diff --git a/lv2/port-props/meson.build b/lv2/port-props/meson.build
deleted file mode 100644
index 900b637..0000000
--- a/lv2/port-props/meson.build
+++ /dev/null
@@ -1,40 +0,0 @@
-# Copyright 2022 David Robillard <d@drobilla.net>
-# SPDX-License-Identifier: CC0-1.0 OR ISC
-
-name = 'port-props'
-path = 'ns' / 'ext' / 'port-props'
-
-port_props_data = files(
- 'port-props.meta.ttl',
- 'port-props.ttl',
- 'manifest.ttl',
-)
-
-headers = files(
- 'port-props.h',
-)
-
-# Install specification bundle
-install_data(port_props_data, install_dir: lv2dir / name + '.lv2')
-install_headers(headers, subdir: 'lv2' / name)
-if get_option('old_headers')
- install_headers(headers, subdir: 'lv2' / 'lv2plug.in' / path)
-endif
-
-# Build documentation
-if build_docs
- lv2_port_props_docs = custom_target(
- name + '.html',
- command: lv2specgen_command_prefix + [
- '--docdir=../../html',
- '--style-uri=../../aux/style.css',
- '@INPUT@',
- '@OUTPUT@',
- ],
- depends: doc_deps,
- input: files('port-props.ttl'),
- install: true,
- install_dir: lv2_docdir / 'ns' / 'ext',
- output: name + '.html',
- )
-endif
diff --git a/lv2/port-props/port-props.h b/lv2/port-props/port-props.h
deleted file mode 100644
index ff4adcd..0000000
--- a/lv2/port-props/port-props.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- Copyright 2012-2016 David Robillard <d@drobilla.net>
-
- 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.
-*/
-
-#ifndef LV2_PORT_PROPS_H
-#define LV2_PORT_PROPS_H
-
-/**
- @defgroup port-props Port Properties
- @ingroup lv2
-
- Various port properties.
-
- @{
-*/
-
-// clang-format off
-
-#define LV2_PORT_PROPS_URI "http://lv2plug.in/ns/ext/port-props" ///< http://lv2plug.in/ns/ext/port-props
-#define LV2_PORT_PROPS_PREFIX LV2_PORT_PROPS_URI "#" ///< http://lv2plug.in/ns/ext/port-props#
-
-#define LV2_PORT_PROPS__causesArtifacts LV2_PORT_PROPS_PREFIX "causesArtifacts" ///< http://lv2plug.in/ns/ext/port-props#causesArtifacts
-#define LV2_PORT_PROPS__continuousCV LV2_PORT_PROPS_PREFIX "continuousCV" ///< http://lv2plug.in/ns/ext/port-props#continuousCV
-#define LV2_PORT_PROPS__discreteCV LV2_PORT_PROPS_PREFIX "discreteCV" ///< http://lv2plug.in/ns/ext/port-props#discreteCV
-#define LV2_PORT_PROPS__displayPriority LV2_PORT_PROPS_PREFIX "displayPriority" ///< http://lv2plug.in/ns/ext/port-props#displayPriority
-#define LV2_PORT_PROPS__expensive LV2_PORT_PROPS_PREFIX "expensive" ///< http://lv2plug.in/ns/ext/port-props#expensive
-#define LV2_PORT_PROPS__hasStrictBounds LV2_PORT_PROPS_PREFIX "hasStrictBounds" ///< http://lv2plug.in/ns/ext/port-props#hasStrictBounds
-#define LV2_PORT_PROPS__logarithmic LV2_PORT_PROPS_PREFIX "logarithmic" ///< http://lv2plug.in/ns/ext/port-props#logarithmic
-#define LV2_PORT_PROPS__notAutomatic LV2_PORT_PROPS_PREFIX "notAutomatic" ///< http://lv2plug.in/ns/ext/port-props#notAutomatic
-#define LV2_PORT_PROPS__notOnGUI LV2_PORT_PROPS_PREFIX "notOnGUI" ///< http://lv2plug.in/ns/ext/port-props#notOnGUI
-#define LV2_PORT_PROPS__rangeSteps LV2_PORT_PROPS_PREFIX "rangeSteps" ///< http://lv2plug.in/ns/ext/port-props#rangeSteps
-#define LV2_PORT_PROPS__supportsStrictBounds LV2_PORT_PROPS_PREFIX "supportsStrictBounds" ///< http://lv2plug.in/ns/ext/port-props#supportsStrictBounds
-#define LV2_PORT_PROPS__trigger LV2_PORT_PROPS_PREFIX "trigger" ///< http://lv2plug.in/ns/ext/port-props#trigger
-
-// clang-format on
-
-/**
- @}
-*/
-
-#endif /* LV2_PORT_PROPS_H */
diff --git a/lv2/port-props/port-props.meta.ttl b/lv2/port-props/port-props.meta.ttl
deleted file mode 100644
index 7077e4b..0000000
--- a/lv2/port-props/port-props.meta.ttl
+++ /dev/null
@@ -1,202 +0,0 @@
-@prefix dcs: <http://ontologi.es/doap-changeset#> .
-@prefix doap: <http://usefulinc.com/ns/doap#> .
-@prefix foaf: <http://xmlns.com/foaf/0.1/> .
-@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
-@prefix pprops: <http://lv2plug.in/ns/ext/port-props#> .
-@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
-@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
-
-<http://lv2plug.in/ns/ext/port-props>
- a doap:Project ;
- doap:name "LV2 Port Properties" ;
- doap:created "2009-01-01" ;
- doap:shortdesc "Various properties for LV2 plugin ports." ;
- doap:maintainer <http://drobilla.net/drobilla#me> ;
- doap:developer <http://lv2plug.in/ns/meta#kfoltman> ;
- doap:release [
- doap:revision "1.2" ;
- doap:created "2012-10-14" ;
- doap:file-release <http://lv2plug.in/spec/lv2-1.2.0.tar.bz2> ;
- dcs:blame <http://drobilla.net/drobilla#me> ;
- dcs:changeset [
- dcs:item [
- rdfs:label "Use consistent label style."
- ]
- ]
- ] , [
- doap:revision "1.0" ;
- doap:created "2012-04-17" ;
- doap:file-release <http://lv2plug.in/spec/lv2-1.0.0.tar.bz2> ;
- dcs:blame <http://drobilla.net/drobilla#me> ;
- dcs:changeset [
- dcs:item [
- rdfs:label "Initial release."
- ]
- ]
- ] ;
- lv2:documentation """
-
-This vocabulary defines various properties for plugin ports, which can be used
-to better describe how a plugin can be controlled. Using this metadata, hosts
-can build better UIs for plugins, and provide more advanced automatic
-functionality.
-
-"""^^lv2:Markdown .
-
-pprops:trigger
- lv2:documentation """
-
-Indicates that the data item corresponds to a momentary event that has been
-detected (control output ports) or is to be triggered (control input ports).
-For input ports, the port needs to be reset to lv2:default value after run()
-function of the plugin has returned. If the control port is assigned a GUI
-widget by the host, the widget should be of auto-off (momentary, one-shot) type
-- for example, a push button if the port is also declared as lv2:toggled, or a
-series of push button or auto-clear input box with a "Send" button if the port
-is also lv2:integer.
-
-"""^^lv2:Markdown .
-
-pprops:supportsStrictBounds
- lv2:documentation """
-
-Indicates use of host support for pprops:hasStrictBounds port property. A
-plugin that specifies it as optional feature can omit value clamping for
-hasStrictBounds ports, if the feature is supported by the host. When specified
-as required feature, it indicates that the plugin does not do any clamping for
-input ports that have a pprops:hasStrictBounds property.
-
-"""^^lv2:Markdown .
-
-pprops:hasStrictBounds
- lv2:documentation """
-
-For hosts that support pprops:supportsStrictBounds, this indicates that the
-value of the port should never exceed the port's minimum and maximum control
-points. For input ports, it moves the responsibility for limiting the range of
-values to host, if it supports pprops:supportsStrictBounds. For output ports,
-it indicates that values within specified range are to be expected, and
-breaking that should be considered by the host as error in plugin
-implementation.
-
-"""^^lv2:Markdown .
-
-pprops:expensive
- lv2:documentation """
-
-Input ports only. Indicates that any changes to the port value may trigger
-expensive background calculation (for example, regeneration of lookup tables in
-a background thread). Any value changes may have not have immediate effect, or
-may cause silence or diminished-quality version of the output until background
-processing is finished. Ports having this property are typically not well
-suited for connection to outputs of other plugins, and should not be offered as
-connection targets or for automation by default.
-
-"""^^lv2:Markdown .
-
-pprops:causesArtifacts
- lv2:documentation """
-
-Input ports only. Indicates that any changes to the port value may produce
-slight artifacts to produced audio signals (zipper noise and other results of
-signal discontinuities). Connecting ports of this type to continuous signals
-is not recommended, and when presenting a list of automation targets, those
-ports may be marked as artifact-producing.
-
-"""^^lv2:Markdown .
-
-pprops:continuousCV
- lv2:documentation """
-
-Indicates that the port carries a "smooth" modulation signal. Control input
-ports of this type are well-suited for being connected to sources of smooth
-signals (knobs with smoothing, modulation rate oscillators, output ports with
-continuousCV type, etc.). Typically, the plugin with ports which have this
-property will implement appropriate smoothing to avoid audio artifacts. For
-output ports, this property suggests the value of the port is likely to change
-frequently, and describes a smooth signal (so successive values may be
-considered points along a curve).
-
-"""^^lv2:Markdown .
-
-pprops:discreteCV
- lv2:documentation """
-
-Indicates that the port carries a "discrete" modulation signal. Input ports of
-this type are well-suited for being connected to sources of discrete signals
-(switches, buttons, classifiers, event detectors, etc.). May be combined with
-pprops:trigger property. For output ports, this property suggests the value of
-the port describe discrete values that should be interpreted as steps (and not
-points along a curve).
-
-"""^^lv2:Markdown .
-
-pprops:logarithmic
- lv2:documentation """
-
-Indicates that port value behaviour within specified range (bounds) is a value
-using logarithmic scale. The lower and upper bounds must be specified, and
-must be of the same sign.
-
-"""^^lv2:Markdown .
-
-pprops:notAutomatic
- lv2:documentation """
-
-Indicates that the port is not primarily intended to be fed with modulation
-signals from external sources (other plugins, etc.). It is merely a UI hint
-and hosts may allow the user to override it.
-
-"""^^lv2:Markdown .
-
-pprops:notOnGUI
- lv2:documentation """
-
-Indicates that the port is not primarily intended to be represented by a
-separate control in the user interface window (or any similar mechanism used
-for direct, immediate control of control ports). It is merely a UI hint and
-hosts may allow the user to override it.
-
-"""^^lv2:Markdown .
-
-pprops:displayPriority
- lv2:documentation """
-
-Indicates how important a port is to controlling the plugin. If a host can
-only display some ports of a plugin, it should prefer ports with a higher
-display priority. Priorities do not need to be unique, and are only meaningful
-when compared to each other.
-
-"""^^lv2:Markdown .
-
-pprops:rangeSteps
- lv2:documentation """
-
-This value indicates into how many evenly-divided points the (control) port
-range should be divided for step-wise control. This may be used for changing
-the value with step-based controllers like arrow keys, mouse wheel, rotary
-encoders, and so on.
-
-Note that when used with a pprops:logarithmic port, the steps are logarithmic
-too, and port value can be calculated as:
-
- :::c
- value = lower * pow(upper / lower, step / (steps - 1))
-
-and the step from value is:
-
- :::c
- step = (steps - 1) * log(value / lower) / log(upper / lower)
-
-where:
-
- * `value` is the port value.
-
- * `step` is the step number (0..steps).
-
- * `steps` is the number of steps (= value of :rangeSteps property).
-
- * `lower` and <code>upper</code> are the bounds.
-
-"""^^lv2:Markdown .
-
diff --git a/lv2/port-props/port-props.ttl b/lv2/port-props/port-props.ttl
deleted file mode 100644
index ea25c6b..0000000
--- a/lv2/port-props/port-props.ttl
+++ /dev/null
@@ -1,80 +0,0 @@
-@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
-@prefix owl: <http://www.w3.org/2002/07/owl#> .
-@prefix pprops: <http://lv2plug.in/ns/ext/port-props#> .
-@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/port-props>
- a owl:Ontology ;
- rdfs:label "LV2 Port Properties" ;
- rdfs:comment "Various properties for LV2 plugin ports." ;
- rdfs:seeAlso <port-props.meta.ttl> ;
- owl:imports <http://lv2plug.in/ns/lv2core> .
-
-pprops:trigger
- a lv2:PortProperty ;
- rdfs:label "trigger" ;
- rdfs:comment "Port is a momentary trigger." .
-
-pprops:supportsStrictBounds
- a lv2:Feature ;
- rdfs:label "supports strict bounds" ;
- rdfs:comment "A feature indicating plugin support for strict port bounds." .
-
-pprops:hasStrictBounds
- a lv2:PortProperty ;
- rdfs:label "has strict bounds" ;
- rdfs:comment "Port has strict bounds which are not internally clamped." .
-
-pprops:expensive
- a lv2:PortProperty ;
- rdfs:label "changes are expensive" ;
- rdfs:comment "Input port is expensive to change." .
-
-pprops:causesArtifacts
- a lv2:PortProperty ;
- rdfs:label "changes cause artifacts" ;
- rdfs:comment "Input port causes audible artifacts when changed." .
-
-pprops:continuousCV
- a lv2:PortProperty ;
- rdfs:label "smooth modulation signal" ;
- rdfs:comment "Port carries a smooth modulation signal." .
-
-pprops:discreteCV
- a lv2:PortProperty ;
- rdfs:label "discrete modulation signal" ;
- rdfs:comment "Port carries a discrete modulation signal." .
-
-pprops:logarithmic
- a lv2:PortProperty ;
- rdfs:label "logarithmic" ;
- rdfs:comment "Port value is logarithmic." .
-
-pprops:notAutomatic
- a lv2:PortProperty ;
- rdfs:label "not automatic" ;
- rdfs:comment "Port that is not intended to be fed with a modulation signal." .
-
-pprops:notOnGUI
- a lv2:PortProperty ;
- rdfs:label "not on GUI" ;
- rdfs:comment "Port that should not be displayed on a GUI." .
-
-pprops:displayPriority
- a rdf:Property ,
- owl:DatatypeProperty ;
- rdfs:domain lv2:Port ;
- rdfs:range xsd:nonNegativeInteger ;
- rdfs:label "display priority" ;
- rdfs:comment "A priority ranking this port in importance to its plugin." .
-
-pprops:rangeSteps
- a rdf:Property ,
- owl:DatatypeProperty ;
- rdfs:domain lv2:Port ;
- rdfs:range xsd:nonNegativeInteger ;
- rdfs:label "range steps" ;
- rdfs:comment "The number of even steps the range should be divided into." .
-