Crudebyte Logo
midiport.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2001-2013
3 
4  Developers:
5 
6  Paul Davis
7  Jack O'Quin
8  Steve Harris
9  Rui Nuno Capela
10  Devin Anderson
11  Kai Vehmanen
12  Ian Esten
13  Dmitry Baikov
14  Torben Hohn
15  Rohan Drape
16  Stephane Letz
17  Christian Schoenebeck
18 
19  This program is free software; you can redistribute it and/or modify
20  it under the terms of the GNU Lesser General Public License as published by
21  the Free Software Foundation; either version 2.1 of the License, or
22  (at your option) any later version.
23 
24  This program is distributed in the hope that it will be useful,
25  but WITHOUT ANY WARRANTY; without even the implied warranty of
26  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27  GNU Lesser General Public License for more details.
28 
29  You should have received a copy of the GNU Lesser General Public License
30  along with this program; if not, write to the Free Software
31  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
32 
33  You are permitted to statically link against a binary version of
34  the JACK library obtained from
35 
36  http://jackaudio.org/downloads/JackiOS-SDK.zip
37 
38  and distribute the resulting application without complying with section 6
39  (requiring recipients of your application to be able to relink against
40  modified versions of libjack).
41 
42  This permission is granted if and ONLY if the resulting application binary
43  issue is intended for execution in any one of the following environments:
44 
45  * Apple Inc. iOS
46 
47  Additional environments may be added to this list in the future.
48  All other terms of the LGPL continue to apply.
49 
50 */
51 
52 #ifndef __JACK_MIDIPORT_H
53 #define __JACK_MIDIPORT_H
54 
55 #ifdef __cplusplus
56 extern "C" {
57 #endif
58 
59 #include <jack/weakmacros.h>
60 #include <jack/types.h>
61 #include <stdlib.h>
62 
71 typedef unsigned char jack_midi_data_t;
72 
73 
94 typedef struct _jack_midi_event
95 {
97  size_t size;
98  jack_midi_data_t *buffer;
100 
101 
121 uint32_t
122 jack_midi_get_event_count(void* port_buffer) JACK_OPTIONAL_WEAK_EXPORT;
123 
124 
136 int
138  void *port_buffer,
139  uint32_t event_index) JACK_OPTIONAL_WEAK_EXPORT;
140 
141 
150 void
151 jack_midi_clear_buffer(void *port_buffer) JACK_OPTIONAL_WEAK_EXPORT;
152 
153 
161 size_t
162 jack_midi_max_event_size(void* port_buffer) JACK_OPTIONAL_WEAK_EXPORT;
163 
164 
184 jack_midi_data_t*
185 jack_midi_event_reserve(void *port_buffer,
186  jack_nframes_t time,
187  size_t data_size) JACK_OPTIONAL_WEAK_EXPORT;
188 
189 
211 int
212 jack_midi_event_write(void *port_buffer,
213  jack_nframes_t time,
214  const jack_midi_data_t *data,
215  size_t data_size) JACK_OPTIONAL_WEAK_EXPORT;
216 
217 
226 uint32_t
227 jack_midi_get_lost_event_count(void *port_buffer) JACK_OPTIONAL_WEAK_EXPORT;
228 
231 #ifdef __cplusplus
232 }
233 #endif
234 
235 
236 #endif /* __JACK_MIDIPORT_H */
237 
238 
DE • EN
Copyright © MMXIII Crudebyte. All rights reserved.

twitter