From bb91f0334218ce1866aee3fd955871aae7c7550f Mon Sep 17 00:00:00 2001
From: David Robillard This extension defines a generic format for a typed piece of data, called an
-"Atom" (e.g. integers, strings, buffers, data structures,
+lv2:Atom (e.g. integers, strings, buffers, data structures,
etc). Atoms allow LV2 plugins and hosts to communicate, process, serialise,
and store values of any type via a generic mechanism (e.g. LV2 ports, events,
disk, shared memory, network). Atoms are, with one exception, Plain
@@ -60,12 +60,12 @@ implementations to be polymorphic and extensible. Atoms (the start of the LV2_Atom header) MUST be 32-bit aligned. Atoms can be communicated in many ways. Since an Atom is the payload of an
-Event, an EventPort
-can be used for communicating Atoms in realtime with sub-sample time stamp
+Event, an EventPort can
+be used for communicating Atoms in realtime with sub-sample time stamp
accuracy. This extension also defines two port types for connecting directly
-to a single Atom: ValuePort and MessagePort, which both have the same buffer format but different
-semantics (with respect to how the run() callback interprets the Atom).
Implementing this extension requires a facility for mapping URIs to integers, such as the LV2 URID @@ -122,8 +122,8 @@ atom:Literal
A UTF-8 encoded string literal, with an optional language tag or datatype.
This type is compatible with an RDF literal and is capable of expressing a
-string in any language, or a value of any type. An LV2_Atom_Literal has an ID lang
and datatype
followed by the
+string in any language, or a value of any type. An LV2_Atom_Literal has a
+URID lang
and datatype
followed by the
string data in UTF-8 encoding. The length of the string data in bytes is
size - (2 * sizeof(uint32_t))
, including the terminating NULL
character. The lang
field SHOULD be a URI of the form
@@ -193,9 +193,9 @@ atom:Vector
An LV2_Atom_Vector is a 16-bit elem_count
and
elem_type
followed by elem_count
atom bodies of type
-elem_type
. The element type must be a fixed size Atom type, i.e. the size of each element is the vector's
-size / elem_count
.
elem_type
. The element type must be a fixed size atom:Atom type,
+i.e. the size of each element is the vector's size /
+elem_count
.
For example, an atom:Vector containing 42 elements of type atom:Float looks like this in memory:
@@ -227,7 +227,7 @@ atom:Tuple rdfs:subClassOf atom:Atom ; rdfs:label "Tuple" ; lv2:documentation """ -A sequence of atoms with varying type
+
A sequence of lv2:Atom with varying type
and size
.
The body of a Tuple is simply a sequence of complete atoms, each aligned to
@@ -239,9 +239,9 @@ atom:Property
rdfs:subClassOf atom:Atom ;
rdfs:label "Property of a Thing" ;
lv2:documentation """
-A single property of some Object. An
-LV2_Atom_Property has an URID key
and
-Atom value
.
+A single property of some lv2:Thing. An
+LV2_Atom_Property has an atom:URID key
and an atom:Atom
+value
.
""" .
atom:Thing
@@ -249,7 +249,7 @@ atom:Thing
rdfs:subClassOf atom:Atom ;
rdfs:label "Thing" ;
lv2:documentation """
-
Abstract base class for a "Thing", i.e. an Atom with a +
Abstract base class for a "Thing", i.e. an atom:Atom with a
number of properties. An LV2_Object is an unsigned
32-bit integer context
and id
followed by a sequence
of LV2_Atom_Property .
map = NULL
, and may be 0
(the default context).
Note this is an abstract class, i.e. no Atom can exist with type =
-uri_to_id(atom:Thing)
. An Object is either a Resource or a Blank, but the
-body
always has the same binary format, LV2_Object. Thus, both
-named and anonymous objects can be handled with common code using only a 64-bit
-header for both.
body
always has the same binary format,
+LV2_Object. Thus, both named and anonymous objects can be handled with common
+code using only a 64-bit header for both.
""" .
atom:Resource
a rdfs:Class ;
rdfs:subClassOf atom:Thing ;
lv2:documentation """
-An Object where id
is the
-URI of the resource mapped to an ID.
+An atom:Thing where id
is the URI of the resource mapped to an
+atom:URID.
""" .
atom:Blank
a rdfs:Class ;
rdfs:subClassOf atom:Thing ;
lv2:documentation """
-An Object where id
is the blank node ID of
-the object, which is only meaningful within a certain limited scope
-(e.g. the container of the Blank) and MUST NOT be used as a global ID.
-In particular, id
is NOT an ID.
+An atom:Thing where id
is the blank node ID of the object, which
+is only meaningful within a certain limited scope (e.g. the container of the
+Blank) and MUST NOT be used as a global ID. In particular, id
is
+NOT an ID.
""" .
atom:Message
a rdfs:Class ;
rdfs:subClassOf atom:Thing ;
lv2:documentation """
-A where id
is a message type ID. Conceptually,
+A atom:Thing where id
is a message type ID. Conceptually,
a Message is identical to a Blank, but is a distinct type with a single type
field to allow simple and fast dispatch by handling code.
@@ -297,15 +296,6 @@ A Message may be serialised as a Blank by adding an rdf:type property with the
value id
unmapped to a URI.
""" .
-atom:Model
- a rdfs:Class ;
- rdfs:subClassOf atom:Atom ;
- rdfs:label "Model" ;
- lv2:documentation """
-A description of a set of objects. In memory, a Model is
-simply a sequence of objects.
-""" .
-
atom:Event
a rdfs:Class ;
rdfs:label "Event" ;
@@ -369,14 +359,14 @@ atom:AtomPort
rdfs:subClassOf lv2:Port ;
rdfs:label "Atom Port" ;
lv2:documentation """
-A port which contains an Atom. Ports of this type will +
A port which contains an lv2:Atom. Ports of this type will
be connected to a 32-bit aligned LV2_Atom immediately followed by
size
bytes of data.
This is an abstract port type, i.e. a port MUST NOT only be an AtomPort, but must be a more descriptive type that is a subclass of AtomPort which -defines the port's semantics (typically ValuePort -or MessagePort).
+defines the port's semantics (typically atom:ValuePort or atom:MessagePort). +Before calling a method on the plugin that writes to an AtomPort output, the host MUST set the size of the Atom in that output to the amount of @@ -427,7 +417,7 @@ atom:EventPort lv2:documentation """ A port used for communicating time-stamped atoms in the audio context. Ports of this type are connected to an LV2_Atom_Buffer, which contains a flat -time-stamped sequence of Events. +time-stamped sequence of atom:Event. This port type is intended as a simpler and atom compatible successor to ev:EventPort. @@ -439,8 +429,8 @@ atom:supports rdfs:range atom:Atom ; rdfs:label "supports" ; lv2:documentation """ -Indicates that a Port supports a certain Atom type. -This is distinct from the port type - e.g. the port type ValuePort can hold -atoms with many different types. This property is used to describe which -Atom types a Port expects to receive or send. +Indicates that a Port supports a certain atom:Atom type. This is distinct from +the port type - e.g. the port type ValuePort can hold atoms with many different +types. This property is used to describe which Atom types a Port expects to +receive or send. """ . diff --git a/ext/files.lv2/files.ttl b/ext/files.lv2/files.ttl index bd1c99b..d3ff8a5 100644 --- a/ext/files.lv2/files.ttl +++ b/ext/files.lv2/files.ttl @@ -48,11 +48,10 @@ management MUST be handled by the host since different hosts may have very different requirements. Plugins MUST NOT make any assumption about file system locations beyond what is explicitly guaranteed by this extension.
-This extension defines two features: files:newFileSupport allows plugins to create new -files within an instance-specific namespace at any time (except in realtime -contexts); while files:pathSupport allows plugins -to refer to file paths in plugin state in a way transparent to the host.
+This extension defines two features: files:newFileSupport allows plugins to +create new files within an instance-specific namespace at any time (except in +realtime contexts); while files:pathSupport allows plugins to refer to file +paths in plugin state in a way transparent to the host.
To create a new file, the plugin MUST request a path from the host using
LV2_Files_New_File_Support::new_file_path(). Thus, the host may choose an
diff --git a/ext/midi.lv2/midi.ttl b/ext/midi.lv2/midi.ttl
index c63b8c2..cbd80c3 100644
--- a/ext/midi.lv2/midi.ttl
+++ b/ext/midi.lv2/midi.ttl
@@ -43,9 +43,9 @@
foaf:mbox This extension defines a mechanism for working with generic/opaque
dynamically allocated memory, called a "Blob", which is
-(unlike an Atom) not necessarily POD. Blobs are accessed via a Reference, which is a special case of Atom that always
-has type = 0
, is not POD, and can only be copied using host
-provided functions. This allows plugins and hosts to work with data of any
-type at all.type =
+0
, is not POD, and can only be copied using host provided functions.
+This allows plugins and hosts to work with data of any type at all.
Reference to a Blob. The actual contents of a Reference -are opaque and host specific, and must not be copied, serialized, or otherwise -interpreted by a plugin, except via functions provided by the host in -LV2_Blob_Support.
+Reference to an lv2:Blob. The actual contents of a Reference are opaque and +host specific, and must not be copied, serialized, or otherwise interpreted by +a plugin, except via functions provided by the host in LV2_Blob_Support.
A Reference is a special case of Atom with type = 0
.
"Null" is the unique Atom with type = 0
and
diff --git a/ext/urid.lv2/urid.ttl b/ext/urid.lv2/urid.ttl
index d074724..85af5c4 100644
--- a/ext/urid.lv2/urid.ttl
+++ b/ext/urid.lv2/urid.ttl
@@ -59,9 +59,9 @@ pointed to an instance of LV2_URID_Mapper.
urid:Unmapper
a lv2:Feature ;
lv2:documentation """
-A feature which is used to unmap URIs previously mapped to integers by Mapper. To support this feature, the host must pass an
-LV2_Feature to LV2_Descriptor::instantiate() with URI
+A feature which is used to unmap URIs previously mapped to integers by
+urid:Mapper. To support this feature, the host must pass an LV2_Feature to
+LV2_Descriptor::instantiate() with URI
http://lv2plug.in/ns/ext/urid#Unmapper
and data pointed to an
instance of LV2_URID_Unmapper.
""" .
--
cgit v1.2.1