@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 midi:  <http://lv2plug.in/ns/ext/midi#> .
@prefix mod:   <http://moddevices.com/ns/mod#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix units: <http://lv2plug.in/ns/extensions/units#> .
@prefix urid:  <http://lv2plug.in/ns/ext/urid#> .

<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/midigen>
	a lv2:Plugin, doap:Project, lv2:UtilityPlugin;
	doap:license <http://usefulinc.com/doap/licenses/gpl>;
	doap:maintainer <http://gareus.org/rgareus#me>;
	doap:name "MIDI Generator";
	lv2:microVersion 0 ;lv2:minorVersion 1026 ;
	lv2:optionalFeature lv2:hardRTCapable;
	lv2:requiredFeature urid:map;
	
	
	lv2:port [
		a atom:AtomPort, lv2:OutputPort;
		atom:bufferType atom:Sequence;
		atom:supports midi:MidiEvent;
		lv2:index 0;
		lv2:symbol "midiout";
		lv2:name "MIDI Out";
	] , [
		a lv2:InputPort, lv2:ControlPort;
		lv2:index 1;
		lv2:symbol "sequence";
		lv2:name "Select Sequence";
		lv2:minimum 0;
		lv2:default 0;
		lv2:maximum 15;
		lv2:portProperty lv2:integer, lv2:enumeration;
		lv2:scalePoint [ rdf:value  0; rdfs:label "C-4 Sequence (Channel 1)"; ];
		lv2:scalePoint [ rdf:value  1; rdfs:label "Cj7 Arpeggio (Iterate Channels)"; ];

		lv2:scalePoint [ rdf:value  2; rdfs:label "Sweep Velocity (C4, C#4, Chn 1)"; ];
		lv2:scalePoint [ rdf:value  3; rdfs:label "Sweep All Notes (Channel 1)"; ];
		lv2:scalePoint [ rdf:value  4; rdfs:label "Sweep C1 -> C7 (Channel 1)"; ];
		lv2:scalePoint [ rdf:value  5; rdfs:label "Sweep Drums Hits (Channel 10)"; ];

		lv2:scalePoint [ rdf:value  6; rdfs:label "Sustain Pedal Test"; ];
		lv2:scalePoint [ rdf:value  7; rdfs:label "Legato to Staccatto"; ];

		lv2:scalePoint [ rdf:value  8; rdfs:label "Slam All Notes (Channel 1)"; ];
		lv2:scalePoint [ rdf:value  9; rdfs:label "Slam 16 Notes * 16 Channels"; ];
		lv2:scalePoint [ rdf:value 10; rdfs:label "Black MIDI - Tetris"; ];

		lv2:scalePoint [ rdf:value 11; rdfs:label "Performance - Bach, BWV 846"; ];
		lv2:scalePoint [ rdf:value 12; rdfs:label "Performance - Beethoven, Symphony 5"; ];
		lv2:scalePoint [ rdf:value 13; rdfs:label "Performance - Rudolph The Red Nosed Reindeer"; ];
		lv2:scalePoint [ rdf:value 14; rdfs:label "Performance - The Cat (J. Smith, Hammond)"; ];
		lv2:scalePoint [ rdf:value 15; rdfs:label "Performance - Amen Break (Drum Pattern)"; ];
		lv2:scalePoint [ rdf:value 16; rdfs:label "Performance - Rock Beat (Drum Pattern)"; ];
	] , [
		a lv2:InputPort, lv2:ControlPort;
		lv2:index 2;
		lv2:symbol "bpm";
		lv2:name "BPM";
		lv2:minimum 20.0;
		lv2:default 120.0;
		lv2:maximum 360.0;
	] , [
		a lv2:OutputPort, lv2:ControlPort;
		lv2:index 3;
		lv2:symbol "progress";
		lv2:name "Progress";
		lv2:minimum 0.0;
		lv2:maximum 100.0;
		units:unit units:pc ;
	];
	rdfs:comment "A MIDI generator that plays fixed, predefined sequences.";
	.
