00001 /* 00002 * Copyright (c) 2001-2004 MUSIC TECHNOLOGY GROUP (MTG) 00003 * UNIVERSITAT POMPEU FABRA 00004 * 00005 * 00006 * This program is free software; you can redistribute it and/or modify 00007 * it under the terms of the GNU General Public License as published by 00008 * the Free Software Foundation; either version 2 of the License, or 00009 * (at your option) any later version. 00010 * 00011 * This program is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 * GNU General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU General Public License 00017 * along with this program; if not, write to the Free Software 00018 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00019 * 00020 */ 00021 00022 #include "MIDIEnums.hxx" 00023 00024 namespace CLAM { 00025 00026 const MIDI::MessageInfo MIDI::sMessageInfo[9] = 00027 { 00028 // nBytes name field[0] field[1] field[2] Enum 00029 { 00030 3, "NoteOff", {"Chn", "Key", "Vel" } // eNoteOff 00031 },{ 00032 3, "NoteOn", {"Chn", "Key", "Vel" } // eNoteOn 00033 },{ 00034 3, "PolyAftertouch", {"Chn", "Key", "Value"} // ePolyAftertouch 00035 },{ 00036 3, "ControlChange", {"Chn", "Ctrl", "Value"} // eControlChange 00037 },{ 00038 2, "ProgramChange", {"Chn", "Value", 0 } // eProgramChange 00039 },{ 00040 3, "Aftertouch", {"Chn", "Value", 0 } // eAftertouch 00041 },{ 00042 3, "Pitchbend", {"Chn", "LSB", "MSB" } // ePitchbend 00043 },{ 00044 1, "System", {"Msg", 0, 0 } // eSystem 00045 },{ 00046 3, "NoteOnOff", {"Chn", "Key", "Vel" } // eSystem 00047 } 00048 }; 00049 00050 const int MIDI::sNBytesPerSysMsg[16] = 00051 { 00052 0, // eExclusiveStart 00053 1, // eQuarterFrams 00054 2, // eSongPosition 00055 1, // eSongSelect 00056 1, // eUndefined1 00057 1, // eUndefined2 00058 1, // eTuneRequest 00059 1, // eExclusiveEnd 00060 1, // eTimingCloce 00061 1, // eTimingTice 00062 1, // eStart 00063 1, // eContinue 00064 1, // eStop 00065 1, // eUndefined3 00066 1, // eActiveSensing 00067 1 // eSystemReset 00068 }; 00069 } 00070