示例#1
0
    private void readOldChord(Chord chord)
    {
        /*Read chord diagram encoded in GP3 format.
         *
         * Chord diagram is read as follows:
         *
         * - Name: :ref:`int-byte-size-string`. Name of the chord, e.g.
         * Em*.
         *
         * - First fret: :ref:`int`. The fret from which the chord is
         * displayed in chord editor.
         *
         * - List of frets: 6 :ref:`Ints <int>`. Frets are listed in order:
         * fret on the string 1, fret on the string 2, ..., fret on the
         * string 6. If string is untouched then the values of fret is
         *-1*.*/

        chord.name      = GPBase.readIntByteSizeString();
        chord.firstFret = GPBase.readInt()[0];
        if (chord.firstFret > 0)
        {
            for (int i = 0; i < 6; i++)
            {
                var fret = GPBase.readInt()[0];
                if (i < chord.strings.Length)
                {
                    chord.strings[i] = fret;
                }
            }
        }
    }
示例#2
0
    private BeatText readText()
    {
        var text = new BeatText();

        text.value = GPBase.readIntByteSizeString();
        return(text);
    }
示例#3
0
    private Marker readMarker(MeasureHeader header)
    {
        Marker marker = new Marker();

        marker.title         = GPBase.readIntByteSizeString();
        marker.color         = readColor();
        marker.measureHeader = header;

        return(marker);
    }
示例#4
0
    private void readInfo()
    {
        /*Read score information.
         *
         * Score information consists of sequence of
         * :ref:`IntByteSizeStrings <int-byte-size-string>`:
         *
         * - title
         * - subtitle
         * - artist
         * - album
         * - words
         * - copyright
         * - tabbed by
         * - instructions
         *
         * The sequence if followed by notice. Notice starts with the
         * number of notice lines stored in :ref:`int`. Each line is
         * encoded in :ref:`int-byte-size-string`.*/

        title         = GPBase.readIntByteSizeString();
        subtitle      = GPBase.readIntByteSizeString();
        interpret     = GPBase.readIntByteSizeString();
        album         = GPBase.readIntByteSizeString();
        author        = GPBase.readIntByteSizeString();
        copyright     = GPBase.readIntByteSizeString();
        tab_author    = GPBase.readIntByteSizeString();
        instructional = GPBase.readIntByteSizeString();
        int notesCount = GPBase.readInt()[0];

        notice = new string[notesCount];
        for (int x = 0; x < notesCount; x++)
        {
            notice[x] = GPBase.readIntByteSizeString();
        }
    }