/ source / audiolib / include / midifuncs.h
midifuncs.h
 1  /*
 2  Copyright (C) 1994-1995 Apogee Software, Ltd.
 3  
 4  This program is free software; you can redistribute it and/or
 5  modify it under the terms of the GNU General Public License
 6  as published by the Free Software Foundation; either version 2
 7  of the License, or (at your option) any later version.
 8  
 9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12  
13  See the GNU General Public License for more details.
14  
15  You should have received a copy of the GNU General Public License
16  along with this program; if not, write to the Free Software
17  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
18  
19  */
20  #ifndef __MIDIFUNCS_H
21  #define __MIDIFUNCS_H
22  
23  typedef struct
24     {
25     void ( *NoteOff )( int channel, int key, int velocity );
26     void ( *NoteOn )( int channel, int key, int velocity );
27     void ( *PolyAftertouch )( int channel, int key, int pressure );
28     void ( *ControlChange )( int channel, int number, int value );
29     void ( *ProgramChange )( int channel, int program );
30     void ( *ChannelAftertouch )( int channel, int pressure );
31     void ( *PitchBend )( int channel, int lsb, int msb );
32     void ( *ReleasePatches )( void );
33     void ( *LoadPatch )( int number );
34     void ( *SetVolume )( int volume );
35     int  ( *GetVolume )( void );
36     void ( *SysEx )( const unsigned char * data, int length );
37     } midifuncs;
38  
39  #endif