From 1bf2db2c8b312f9686aade9b3563d4bf54c813db Mon Sep 17 00:00:00 2001
From: David Robillard <d@drobilla.net>
Date: Sat, 14 Apr 2012 00:47:14 +0000
Subject: Remove redundant time unit definitions and use those from units
 extension.

---
 lv2/lv2plug.in/ns/ext/atom/atom.h   |  6 +----
 lv2/lv2plug.in/ns/ext/atom/atom.ttl | 52 ++++++++++++-------------------------
 2 files changed, 18 insertions(+), 40 deletions(-)

(limited to 'lv2')

diff --git a/lv2/lv2plug.in/ns/ext/atom/atom.h b/lv2/lv2plug.in/ns/ext/atom/atom.h
index 29369ac..37a3e6c 100644
--- a/lv2/lv2plug.in/ns/ext/atom/atom.h
+++ b/lv2/lv2plug.in/ns/ext/atom/atom.h
@@ -30,8 +30,6 @@
 
 #define LV2_ATOM__Atom          LV2_ATOM_PREFIX "Atom"
 #define LV2_ATOM__AtomPort      LV2_ATOM_PREFIX "AtomPort"
-#define LV2_ATOM__AudioFrames   LV2_ATOM_PREFIX "AudioFrames"
-#define LV2_ATOM__Beats         LV2_ATOM_PREFIX "Beats"
 #define LV2_ATOM__Blank         LV2_ATOM_PREFIX "Blank"
 #define LV2_ATOM__Bool          LV2_ATOM_PREFIX "Bool"
 #define LV2_ATOM__Chunk         LV2_ATOM_PREFIX "Chunk"
@@ -49,7 +47,6 @@
 #define LV2_ATOM__Sequence      LV2_ATOM_PREFIX "Sequence"
 #define LV2_ATOM__Sound         LV2_ATOM_PREFIX "Sound"
 #define LV2_ATOM__String        LV2_ATOM_PREFIX "String"
-#define LV2_ATOM__TimeUnit      LV2_ATOM_PREFIX "TimeUnit"
 #define LV2_ATOM__Tuple         LV2_ATOM_PREFIX "Tuple"
 #define LV2_ATOM__URI           LV2_ATOM_PREFIX "URI"
 #define LV2_ATOM__URID          LV2_ATOM_PREFIX "URID"
@@ -208,8 +205,7 @@ typedef struct {
 
    The unit field is either a URID that described an appropriate time stamp
    type, or may be 0 where a default stamp type is known.  For
-   LV2_Descriptor::run(), the default stamp type is atom:AudioFrames, i.e.
-   LV2_Atom_Audio_Time.
+   LV2_Descriptor::run(), the default stamp type is audio frames.
 
    The contents of a sequence is a series of LV2_Atom_Event, each aligned
    to 64-bits, e.g.:
diff --git a/lv2/lv2plug.in/ns/ext/atom/atom.ttl b/lv2/lv2plug.in/ns/ext/atom/atom.ttl
index a614a7d..426fc2a 100644
--- a/lv2/lv2plug.in/ns/ext/atom/atom.ttl
+++ b/lv2/lv2plug.in/ns/ext/atom/atom.ttl
@@ -1,13 +1,14 @@
-@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
-@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 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 ui:   <http://lv2plug.in/ns/extensions/ui#> .
-@prefix xsd:  <http://www.w3.org/2001/XMLSchema#> .
+@prefix atom:  <http://lv2plug.in/ns/ext/atom#> .
+@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 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 ui:    <http://lv2plug.in/ns/extensions/ui#> .
+@prefix units: <http://lv2plug.in/ns/extensions/units#> .
+@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
 
 <http://lv2plug.in/ns/ext/atom>
 	a lv2:Specification ;
@@ -440,11 +441,6 @@ assumed to be known from context.  Because of this, directly serialising an
 atom:Sound is probably a bad idea, use a standard format like WAV instead.</p>
 """ .
 
-atom:TimeUnit
-	a rdfs:Class ;
-	rdfs:label "Time Unit" ;
-	lv2:documentation "<p>A unit for atom:Event time stamps.</p>" .
-
 atom:frameTime
 	a rdf:Property ,
 		owl:DatatypeProperty ,
@@ -465,26 +461,6 @@ atom:beatTime
 <p>Time stamp in beats.  Typically used for events.</p>
 """ .
 
-atom:Frames
-	a rdfs:Class ;
-	rdfs:subClassOf atom:TimeUnit ;
-	rdfs:label "Frames" ;
-	lv2:documentation """
-<p>Time in audio frames.  Converting this to absolute time depends on the
-sample rate.  When this is the stamp unit for an atom:Sequence, its events have
-int64_t time stamps (<code>LV2_Atom_Event.time.frames</code>)</p>
-""" .
-
-atom:Beats
-	a rdfs:Class ;
-	rdfs:subClassOf atom:TimeUnit ;
-	rdfs:label "Beats" ;
-	lv2:documentation """
-<p>Time in beats.  Converting this to absolute time depends on the tempo.  When
-this is the stamp unit for an atom:Sequence, the events in that sequence have a
-<code>double</code> stamp (<code>LV2_Atom_Event.time.beats</code>).</p>
-""" .
-
 atom:Event
 	a rdfs:Class ;
 	rdfs:label "Event" ;
@@ -502,6 +478,12 @@ atom:Sequence
 	lv2:documentation """
 <p>A sequence of atom:Event, i.e. a series of time-stamped Atoms.</p>
 
+<p>LV2_Atom_Sequence_Body.unit describes the time unit for the contained atoms.
+If the unit is known from context (e.g. run() stamps are always audio frames),
+this field may be zero.  Otherwise, it SHOULD be either units:frame or
+units:beat, in which case ev.time.frames or ev.time.beats is valid,
+respectively.</p>
+
 <p>If serialised to RDF, a Sequence has a similar form to atom:Vector, but for
 brevity the elements may be assumed to be atom:Event, e.g.:</p>
 
-- 
cgit v1.2.1