JACK-AUDIO-CONNECTION-KIT
0.121.2
|
00001 /* 00002 Copyright (C) 2004 Ian Esten 00003 00004 This program is free software; you can redistribute it and/or modify 00005 it under the terms of the GNU Lesser General Public License as published by 00006 the Free Software Foundation; either version 2.1 of the License, or 00007 (at your option) any later version. 00008 00009 This program is distributed in the hope that it will be useful, 00010 but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 GNU Lesser General Public License for more details. 00013 00014 You should have received a copy of the GNU Lesser General Public License 00015 along with this program; if not, write to the Free Software 00016 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00017 00018 */ 00019 00020 00021 #ifndef __JACK_MIDIPORT_H 00022 #define __JACK_MIDIPORT_H 00023 00024 #ifdef __cplusplus 00025 extern "C" { 00026 #endif 00027 00028 #include <jack/weakmacros.h> 00029 #include <jack/types.h> 00030 #include <stdlib.h> 00031 00032 00034 typedef unsigned char jack_midi_data_t; 00035 00036 00038 typedef struct _jack_midi_event 00039 { 00040 jack_nframes_t time; 00041 size_t size; 00042 jack_midi_data_t *buffer; 00043 } jack_midi_event_t; 00044 00045 00051 /* Get number of events in a port buffer. 00052 * 00053 * @param port_buffer Port buffer from which to retrieve event. 00054 * @return number of events inside @a port_buffer 00055 */ 00056 jack_nframes_t 00057 jack_midi_get_event_count(void* port_buffer) JACK_OPTIONAL_WEAK_EXPORT; 00058 00059 00071 int 00072 jack_midi_event_get(jack_midi_event_t *event, 00073 void *port_buffer, 00074 jack_nframes_t event_index) JACK_OPTIONAL_WEAK_EXPORT; 00075 00076 00085 void 00086 jack_midi_clear_buffer(void *port_buffer) JACK_OPTIONAL_WEAK_EXPORT; 00087 00088 00096 size_t 00097 jack_midi_max_event_size(void* port_buffer) JACK_OPTIONAL_WEAK_EXPORT; 00098 00099 00119 jack_midi_data_t* 00120 jack_midi_event_reserve(void *port_buffer, 00121 jack_nframes_t time, 00122 size_t data_size) JACK_OPTIONAL_WEAK_EXPORT; 00123 00124 00146 int 00147 jack_midi_event_write(void *port_buffer, 00148 jack_nframes_t time, 00149 const jack_midi_data_t *data, 00150 size_t data_size) JACK_OPTIONAL_WEAK_EXPORT; 00151 00152 00161 jack_nframes_t 00162 jack_midi_get_lost_event_count(void *port_buffer) JACK_OPTIONAL_WEAK_EXPORT; 00163 00167 #ifdef __cplusplus 00168 } 00169 #endif 00170 00171 00172 #endif /* __JACK_MIDIPORT_H */ 00173 00174 00175