#
# Copyright (C) 2012 Hermann Meyer, Andreas Degert, Pete Shorthose, Steve Poskitt
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# --------------------------------------------------------------------------
#


@prefix doap: <http://usefulinc.com/ns/doap#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix bufsz: <http://lv2plug.in/ns/ext/buf-size#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix guiext: <http://lv2plug.in/ns/extensions/ui#>.
@prefix midi: <http://lv2plug.in/ns/ext/midi#> .
@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .

<http://guitarix.sourceforge.net#me>
	a foaf:Person ;
	foaf:name "Guitarix team" ;
	foaf:mbox <mailto:brummer@web.de> ;
	rdfs:seeAlso <http://guitarix.sourceforge.net> .

<http://guitarix.sourceforge.net/plugins/gxtuner>
	a doap:Project ;
	doap:maintainer <http://guitarix.sourceforge.net#me> ;
	doap:name "GxTuner" .

<http://guitarix.sourceforge.net/plugins/gxtuner#tuner>
    a lv2:Plugin ,
        lv2:AnalyserPlugin ;
    doap:maintainer <http://guitarix.sourceforge.net#me> ;
    doap:name "GxTuner";
    doap:license <http://opensource.org/licenses/isc> ;
    lv2:project <http://guitarix.sourceforge.net/plugins/gxtuner> ;
    lv2:optionalFeature lv2:hardRTCapable ;

  guiext:ui <http://guitarix.sourceforge.net/plugins/gxtuner#gui>;
  
    lv2:minorVersion 34;
    lv2:microVersion 0;
    
rdfs:comment """

...

""";

    lv2:port  [
        a  lv2:ControlPort, lv2:OutputPort ;
        lv2:index 0 ;
        lv2:symbol "FREQ" ;
        lv2:name "FREQ";
        lv2:default 0.0 ;
        lv2:minimum 0.0 ;
        lv2:maximum 1000.0 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 1 ;
        lv2:symbol "REFFREQ" ;
        lv2:name "REFFREQ";
        lv2:default 440.0 ;
        lv2:minimum 427.0 ;
        lv2:maximum 453.0 ;
    ] ,[
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 2 ;
        lv2:symbol "TUNER_MODE" ;
        lv2:name "Tuner Mode";
        lv2:portProperty lv2:integer;
        lv2:portProperty lv2:enumeration ;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 54 ;
        lv2:scalePoint [rdfs:label "(Chromatic)"; rdf:value 0];
        lv2:scalePoint [rdfs:label "Standard/E"; rdf:value 1];
        lv2:scalePoint [rdfs:label "Standard/Es"; rdf:value 2];
        lv2:scalePoint [rdfs:label "Open E"; rdf:value 3];
        lv2:scalePoint [rdfs:label "Drop D"; rdf:value 4];
        lv2:scalePoint [rdfs:label "Half Step Down"; rdf:value 5];
        lv2:scalePoint [rdfs:label "Full Step Down"; rdf:value 6];
        lv2:scalePoint [rdfs:label "1 and 1/2 Steps Down"; rdf:value 7];
        lv2:scalePoint [rdfs:label "Double Drop D"; rdf:value 8];
        lv2:scalePoint [rdfs:label "Drop C"; rdf:value 9];
        lv2:scalePoint [rdfs:label "Drop C#"; rdf:value 10];
        lv2:scalePoint [rdfs:label "Drop B"; rdf:value 11];
        lv2:scalePoint [rdfs:label "Drop A#"; rdf:value 12];
        lv2:scalePoint [rdfs:label "Drop A"; rdf:value 13];
        lv2:scalePoint [rdfs:label "Open D"; rdf:value 14];
        lv2:scalePoint [rdfs:label "Open D Minor"; rdf:value 15];
        lv2:scalePoint [rdfs:label "Open G"; rdf:value 16];
        lv2:scalePoint [rdfs:label "Open G Minor"; rdf:value 17];
        lv2:scalePoint [rdfs:label "Open C"; rdf:value 18];
        lv2:scalePoint [rdfs:label "Open C#"; rdf:value 19];
        lv2:scalePoint [rdfs:label "Open C Minor"; rdf:value 20];
        lv2:scalePoint [rdfs:label "Open E7"; rdf:value 21];
        lv2:scalePoint [rdfs:label "Open E Minor7"; rdf:value 22];
        lv2:scalePoint [rdfs:label "Open G Major7"; rdf:value 23];
        lv2:scalePoint [rdfs:label "Open A Minor"; rdf:value 24];
        lv2:scalePoint [rdfs:label "Open A Minor7"; rdf:value 25];
        lv2:scalePoint [rdfs:label "Open A"; rdf:value 26];
        lv2:scalePoint [rdfs:label "C Tuning"; rdf:value 27];
        lv2:scalePoint [rdfs:label "C# Tuning"; rdf:value 28];
        lv2:scalePoint [rdfs:label "Bb Tuning"; rdf:value 29];
        lv2:scalePoint [rdfs:label "A to A (Baritone)"; rdf:value 30];
        lv2:scalePoint [rdfs:label "Open Dsus2"; rdf:value 31];
        lv2:scalePoint [rdfs:label "Open Gsus2"; rdf:value 32];
        lv2:scalePoint [rdfs:label "G6","Modal G"; rdf:value 33];
        lv2:scalePoint [rdfs:label "Overtone"; rdf:value 34];
        lv2:scalePoint [rdfs:label "Pentatonic"; rdf:value 35];
        lv2:scalePoint [rdfs:label "Minor Third"; rdf:value 36];
        lv2:scalePoint [rdfs:label "Major Third"; rdf:value 37];
        lv2:scalePoint [rdfs:label "All Fourths"; rdf:value 38];
        lv2:scalePoint [rdfs:label "Augmented Fourths"; rdf:value 39];
        lv2:scalePoint [rdfs:label "Slow Motion"; rdf:value 40];
        lv2:scalePoint [rdfs:label "Admiral"; rdf:value 41];
        lv2:scalePoint [rdfs:label "Buzzard"; rdf:value 42];
        lv2:scalePoint [rdfs:label "Face"; rdf:value 43];
        lv2:scalePoint [rdfs:label "Four and Twenty"; rdf:value 44];
        lv2:scalePoint [rdfs:label "Ostrich"; rdf:value 45];
        lv2:scalePoint [rdfs:label "Capo 200"; rdf:value 46];
        lv2:scalePoint [rdfs:label "Balalaika"; rdf:value 47];
        lv2:scalePoint [rdfs:label "Cittern One"; rdf:value 48];
        lv2:scalePoint [rdfs:label "Cittern Two"; rdf:value 49];
        lv2:scalePoint [rdfs:label "Dobro"; rdf:value 50];
        lv2:scalePoint [rdfs:label "Lefty"; rdf:value 51];
        lv2:scalePoint [rdfs:label "Mandoguitar"; rdf:value 52];
        lv2:scalePoint [rdfs:label "Rusty Cage"; rdf:value 53];
        lv2:scalePoint [rdfs:label "Hardcore"; rdf:value 54];
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 3 ;
        lv2:symbol "TEMPERAMENT" ;
        lv2:name "TEMPERAMENT";
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 2 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 4 ;
        lv2:symbol "THRESHOLD" ;
        lv2:name "THRESHOLD";
        lv2:default -50 ;
        lv2:minimum -60 ;
        lv2:maximum 4 ;
    ] , [
        a  lv2:ControlPort, lv2:OutputPort ;
        lv2:index 5 ;
        lv2:symbol "MAXL" ;
        lv2:name "MAXL";
        lv2:default 0.0 ;
        lv2:minimum 0.0 ;
        lv2:maximum 1000.0 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 6 ;
        lv2:symbol "RESET" ;
        lv2:name "RESET";
        lv2:default 1 ;
        lv2:minimum -10 ;
        lv2:maximum 10 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 7 ;
        lv2:symbol "LEVEL" ;
        lv2:name "LEVEL";
        lv2:default -45 ;
        lv2:minimum -60 ;
        lv2:maximum 4 ;
   ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 8 ;
        lv2:symbol "CHANNEL" ;
        lv2:name "CHANNELL";
        lv2:portProperty lv2:integer;
        lv2:portProperty lv2:enumeration ;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 16 ;
        lv2:scalePoint [rdfs:label "0"; rdf:value 0];
        lv2:scalePoint [rdfs:label "1"; rdf:value 1];
        lv2:scalePoint [rdfs:label "2"; rdf:value 2];
        lv2:scalePoint [rdfs:label "3"; rdf:value 3];
        lv2:scalePoint [rdfs:label "4"; rdf:value 4];
        lv2:scalePoint [rdfs:label "5"; rdf:value 5];
        lv2:scalePoint [rdfs:label "6"; rdf:value 6];
        lv2:scalePoint [rdfs:label "7"; rdf:value 7];
        lv2:scalePoint [rdfs:label "8"; rdf:value 8];
        lv2:scalePoint [rdfs:label "9"; rdf:value 9];
        lv2:scalePoint [rdfs:label "10"; rdf:value 10];
        lv2:scalePoint [rdfs:label "11"; rdf:value 11];
        lv2:scalePoint [rdfs:label "12"; rdf:value 12];
        lv2:scalePoint [rdfs:label "13"; rdf:value 13];
        lv2:scalePoint [rdfs:label "14"; rdf:value 14];
        lv2:scalePoint [rdfs:label "15"; rdf:value 15];
        lv2:scalePoint [rdfs:label "16"; rdf:value 16];
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 9 ;
        lv2:symbol "MIDI_ON" ;
        lv2:name "MIDI_ON";
        lv2:portProperty lv2:integer;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 10 ;
        lv2:symbol "FASTNOTE" ;
        lv2:name "FASTNOTE";
        lv2:portProperty lv2:integer;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 11 ;
        lv2:symbol "PITCHBEND" ;
        lv2:name "PITCHBEND";
        lv2:portProperty lv2:integer;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 12 ;
        lv2:symbol "SINGLENOTE" ;
        lv2:name "SINGLENOTE";
        lv2:portProperty lv2:integer;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a  lv2:ControlPort, lv2:InputPort ;
        lv2:index 13 ;
        lv2:symbol "BPM" ;
        lv2:name "BPM";
        lv2:portProperty lv2:integer;
        lv2:default 0.0 ;
        lv2:minimum 0.0 ;
        lv2:maximum 360.0 ;
    ] , [
        a  lv2:ControlPort, lv2:InputPort ;
        lv2:index 14 ;
        lv2:symbol "VELOCITY" ;
        lv2:name "VELOCITY";
        lv2:portProperty lv2:integer;
        lv2:default 64.0 ;
        lv2:minimum 0.0 ;
        lv2:maximum 127.0 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 15 ;
        lv2:symbol "VERIFY" ;
        lv2:name "VERIFY";
        lv2:portProperty lv2:integer;
        lv2:default 1 ;
        lv2:minimum 1 ;
        lv2:maximum 12 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 16 ;
        lv2:symbol "GATE" ;
        lv2:name "GATE";
        lv2:portProperty lv2:integer;
        lv2:default 0 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 17 ;
        lv2:symbol "SYNTHFREQ" ;
        lv2:name "SYNTHFREQ";
        lv2:default 220 ;
        lv2:minimum 30 ;
        lv2:maximum 1000 ;
    ] , [
        a lv2:InputPort ,
            lv2:ControlPort ;
        lv2:index 18 ;
        lv2:symbol "GAIN" ;
        lv2:name "GAIN";
        lv2:default 1 ;
        lv2:minimum 0 ;
        lv2:maximum 1 ;
    ] , [
        a lv2:OutputPort ,
            atom:AtomPort ;
        atom:bufferType atom:Sequence ;
        atom:supports midi:MidiEvent ;
        lv2:designation lv2:control ;
        lv2:index 19 ;
        lv2:symbol "midi_out" ;
        lv2:name "MIDI Out"
    ] , [
        a lv2:AudioPort ,
            lv2:OutputPort ;
        lv2:index 20 ;
        lv2:symbol "out" ;
        lv2:name "Out" ;
    ] , [
        a lv2:AudioPort ,
            lv2:InputPort ;
        lv2:index 21 ;
        lv2:symbol "in" ;
        lv2:name "In" ;
    ].

<http://guitarix.sourceforge.net/plugins/gxtuner#gui>
  a guiext:GtkUI;
  guiext:binary <gxtuner_gui.so>;
  guiext:requiredFeature guiext:makeResident .
  
