@prefix atom:  <http://lv2plug.in/ns/ext/atom#> .
@prefix doap:  <http://usefulinc.com/ns/doap#> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .
@prefix lv2:   <http://lv2plug.in/ns/lv2core#> .
@prefix opts:  <http://lv2plug.in/ns/ext/options#> .
@prefix pprop: <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 rsz:   <http://lv2plug.in/ns/ext/resize-port#> .
@prefix ui:    <http://lv2plug.in/ns/extensions/ui#> .
@prefix units: <http://lv2plug.in/ns/extensions/units#> .
@prefix urid:  <http://lv2plug.in/ns/ext/urid#> .

ui:scaleFactor a opts:Option .

@prefix phaserotate: <http://gareus.org/oss/lv2/phaserotate#> .

<http://gareus.org/rgareus#me>
	a foaf:Person;
	foaf:name "Robin Gareus";
	foaf:mbox <mailto:robin@gareus.org>;
	foaf:homepage <http://gareus.org/> .

<http://gareus.org/oss/lv2/phaserotate>
	a lv2:Plugin, doap:Project, lv2:UtilityPlugin;
	doap:license <http://usefulinc.com/doap/licenses/gpl>;
	doap:maintainer <http://gareus.org/rgareus#me>;
	doap:name "Phaserotate";
	lv2:microVersion 0 ;lv2:minorVersion 1540 ;
	lv2:optionalFeature lv2:hardRTCapable;
	lv2:requiredFeature urid:map;
	rdfs:comment "Phase rotate signal.";

	ui:ui phaserotate:ui_gl ;
	

	lv2:port [
		a atom:AtomPort ,
			lv2:InputPort ;
		atom:bufferType atom:Sequence ;
		lv2:designation lv2:control ;
		lv2:index 0 ;
		lv2:symbol "control" ;
		lv2:name "control" ;
		rdfs:comment "UI to plugin communication"
	] , [
		a atom:AtomPort ,
			lv2:OutputPort ;
		atom:bufferType atom:Sequence ;
		lv2:designation lv2:control ;
		lv2:index 1 ;
		lv2:symbol "notify" ;
		lv2:name "Notify" ;
		rsz:minimumSize 4096;
		rdfs:comment "Plugin to GUI communication"
	] , [
		a lv2:ControlPort, lv2:OutputPort;
		lv2:index 2;
		lv2:symbol "latency";
		lv2:name "Signal Latency";
		lv2:minimum 0;
		lv2:maximum 8192;
		lv2:portProperty lv2:reportsLatency, lv2:integer;
		units:unit units:frame;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 3 ;
		lv2:symbol "angle" ;
		lv2:name "Angle" ;
		lv2:default 0.0 ;
		lv2:minimum -180.0 ;
		lv2:maximum 180.0 ;
		lv2:scalePoint [ rdfs:label  "-180°"; rdf:value -180.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-135°"; rdf:value -135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-90°";  rdf:value -90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-45°";  rdf:value -45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "0°";   rdf:value 0.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "45°";  rdf:value 45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "90°";  rdf:value 90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "135°"; rdf:value 135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "180°"; rdf:value 180.0 ; ] ;
		units:unit units:degree;
		pprop:rangeSteps 721;
	] , [
		a lv2:AudioPort ,
			lv2:InputPort ;
		lv2:index 4 ;
		lv2:symbol "in" ;
		lv2:name "In"
	] , [
		a lv2:AudioPort ,
			lv2:OutputPort ;
		lv2:index 5 ;
		lv2:symbol "out" ;
		lv2:name "Out"
	]
	.
<http://gareus.org/oss/lv2/phaserotate#stereo>
	a lv2:Plugin, doap:Project, lv2:UtilityPlugin;
	doap:license <http://usefulinc.com/doap/licenses/gpl>;
	doap:maintainer <http://gareus.org/rgareus#me>;
	doap:name "Phaserotate Stereo";
	lv2:microVersion 0 ;lv2:minorVersion 1540 ;
	lv2:optionalFeature lv2:hardRTCapable;
	lv2:requiredFeature urid:map;
	rdfs:comment "Phase rotate signal.";

	ui:ui phaserotate:ui_gl ;
	

	lv2:port [
		a atom:AtomPort ,
			lv2:InputPort ;
		atom:bufferType atom:Sequence ;
		lv2:designation lv2:control ;
		lv2:index 0 ;
		lv2:symbol "control" ;
		lv2:name "control" ;
		rdfs:comment "UI to plugin communication"
	] , [
		a atom:AtomPort ,
			lv2:OutputPort ;
		atom:bufferType atom:Sequence ;
		lv2:designation lv2:control ;
		lv2:index 1 ;
		lv2:symbol "notify" ;
		lv2:name "Notify" ;
		rsz:minimumSize 4096;
		rdfs:comment "Plugin to GUI communication"
	] , [
		a lv2:ControlPort, lv2:OutputPort;
		lv2:index 2;
		lv2:symbol "latency";
		lv2:name "Signal Latency";
		lv2:minimum 0;
		lv2:maximum 8192;
		lv2:portProperty lv2:reportsLatency, lv2:integer;
		units:unit units:frame;
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 3 ;
		lv2:symbol "angleL" ;
		lv2:name "Angle Left" ;
		lv2:default 0.0 ;
		lv2:minimum -180.0 ;
		lv2:maximum 180.0 ;
		lv2:scalePoint [ rdfs:label  "-180°"; rdf:value -180.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-135°"; rdf:value -135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-90°";  rdf:value -90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-45°";  rdf:value -45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "0°";   rdf:value 0.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "45°";  rdf:value 45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "90°";  rdf:value 90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "135°"; rdf:value 135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "180°"; rdf:value 180.0 ; ] ;
		units:unit units:degree;
		pprop:rangeSteps 721;
	] , [
		a lv2:AudioPort ,
			lv2:InputPort ;
		lv2:index 4 ;
		lv2:symbol "inL" ;
		lv2:name "In Left"
	] , [
		a lv2:AudioPort ,
			lv2:OutputPort ;
		lv2:index 5 ;
		lv2:symbol "outL" ;
		lv2:name "Out Left"
	] , [
		a lv2:InputPort, lv2:ControlPort ;
		lv2:index 6 ;
		lv2:symbol "angleR" ;
		lv2:name "Angle Right" ;
		lv2:default 0.0 ;
		lv2:minimum -180.0 ;
		lv2:maximum 180.0 ;
		lv2:scalePoint [ rdfs:label  "-180°"; rdf:value -180.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-135°"; rdf:value -135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-90°";  rdf:value -90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "-45°";  rdf:value -45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "0°";   rdf:value 0.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "45°";  rdf:value 45.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "90°";  rdf:value 90.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "135°"; rdf:value 135.0 ; ] ;
		lv2:scalePoint [ rdfs:label  "180°"; rdf:value 180.0 ; ] ;
		units:unit units:degree;
		pprop:rangeSteps 721;
	] , [
		a lv2:AudioPort ,
			lv2:InputPort ;
		lv2:index 7 ;
		lv2:symbol "inR" ;
		lv2:name "In Right"
	] , [
		a lv2:AudioPort ,
			lv2:OutputPort ;
		lv2:index 8 ;
		lv2:symbol "outR" ;
		lv2:name "Out Right"
	]
	.

phaserotate:ui_gl
	a ui:X11UI ;
	lv2:requiredFeature ui:idleInterface; lv2:extensionData ui:idleInterface;
	lv2:requiredFeature urid:map ;
  .
