linuxsampler 1.0.0
|
00001 /*************************************************************************** 00002 * * 00003 * Copyright (C) 2005, 2006 Christian Schoenebeck * 00004 * * 00005 * This program is free software; you can redistribute it and/or modify * 00006 * it under the terms of the GNU General Public License as published by * 00007 * the Free Software Foundation; either version 2 of the License, or * 00008 * (at your option) any later version. * 00009 * * 00010 * This program is distributed in the hope that it will be useful, * 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 00013 * GNU General Public License for more details. * 00014 * * 00015 * You should have received a copy of the GNU General Public License * 00016 * along with this program; if not, write to the Free Software * 00017 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00018 * MA 02111-1307 USA * 00019 ***************************************************************************/ 00020 00021 #ifndef __LS_MIDI_H__ 00022 #define __LS_MIDI_H__ 00023 00024 #include <string.h> 00025 00026 namespace LinuxSampler { 00027 00029 // global type definitions 00030 00034 enum midi_chan_t { 00035 midi_chan_1 = 0, 00036 midi_chan_2 = 1, 00037 midi_chan_3 = 2, 00038 midi_chan_4 = 3, 00039 midi_chan_5 = 4, 00040 midi_chan_6 = 5, 00041 midi_chan_7 = 6, 00042 midi_chan_8 = 7, 00043 midi_chan_9 = 8, 00044 midi_chan_10 = 9, 00045 midi_chan_11 = 10, 00046 midi_chan_12 = 11, 00047 midi_chan_13 = 12, 00048 midi_chan_14 = 13, 00049 midi_chan_15 = 14, 00050 midi_chan_16 = 15, 00051 midi_chan_all = 16 00052 }; 00053 00057 struct midi_prog_index_t { 00058 uint8_t midi_bank_msb; 00059 uint8_t midi_bank_lsb; 00060 uint8_t midi_prog; 00061 00062 bool operator< (const midi_prog_index_t& other) const { 00063 return memcmp(this, &other, sizeof(midi_prog_index_t)) < 0; 00064 } 00065 }; 00066 00067 } // namsepace LinuxSampler 00068 00069 #endif // __LS_MIDI_H__