JACK-AUDIO-CONNECTION-KIT 0.124.1
types.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2001 Paul Davis
3 Copyright (C) 2004 Jack O'Quin
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation; either version 2.1 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser 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
21#ifndef __jack_types_h__
22#define __jack_types_h__
23
24#include <inttypes.h>
25#include <pthread.h>
26#include <uuid/uuid.h>
27
28typedef uint64_t jack_uuid_t;
29
30typedef int32_t jack_shmsize_t;
31
35typedef uint32_t jack_nframes_t;
36
40#define JACK_MAX_FRAMES (4294967295U) /* This should be UINT32_MAX, but
41 C++ has a problem with that. */
42
47typedef uint64_t jack_time_t;
48
53#define JACK_LOAD_INIT_LIMIT 1024
54
61
66typedef struct _jack_port jack_port_t;
67
72typedef struct _jack_client jack_client_t;
73
78typedef uint32_t jack_port_id_t;
79
85typedef pthread_t jack_native_thread_t;
86
90enum JackOptions {
91
95 JackNullOption = 0x00,
96
103 JackNoStartServer = 0x01,
104
109 JackUseExactName = 0x02,
110
114 JackServerName = 0x04,
115
120 JackLoadName = 0x08,
121
126 JackLoadInit = 0x10,
127
132};
133
135#define JackOpenOptions (JackSessionID|JackServerName|JackNoStartServer|JackUseExactName)
136
138#define JackLoadOptions (JackLoadInit|JackLoadName|JackUseExactName)
139
144typedef enum JackOptions jack_options_t;
145
149enum JackStatus {
150
154 JackFailure = 0x01,
155
159 JackInvalidOption = 0x02,
160
170 JackNameNotUnique = 0x04,
171
178 JackServerStarted = 0x08,
179
183 JackServerFailed = 0x10,
184
188 JackServerError = 0x20,
189
193 JackNoSuchClient = 0x40,
194
198 JackLoadFailure = 0x80,
199
203 JackInitFailure = 0x100,
204
208 JackShmFailure = 0x200,
209
213 JackVersionError = 0x400,
214
215 /*
216 * BackendError
217 */
218 JackBackendError = 0x800,
219
220 /*
221 * Client is being shutdown against its will
222 */
224};
225
230typedef enum JackStatus jack_status_t;
231
236
243
251};
252
257
267typedef void (*JackLatencyCallback)(jack_latency_callback_mode_t mode, void *arg);
268
273{
282};
285
298typedef int (*JackProcessCallback)(jack_nframes_t nframes, void *arg);
299
312typedef void (*JackThreadInitCallback)(void *arg);
313
322typedef int (*JackGraphOrderCallback)(void *arg);
323
334typedef int (*JackXRunCallback)(void *arg);
335
350typedef int (*JackBufferSizeCallback)(jack_nframes_t nframes, void *arg);
351
361typedef int (*JackSampleRateCallback)(jack_nframes_t nframes, void *arg);
362
372typedef void (*JackPortRegistrationCallback)(jack_port_id_t port, int register, void *arg);
373
383typedef void (*JackPortRenameCallback)(jack_port_id_t port, const char* old_name, const char* new_name, void* arg);
384
394typedef void (*JackClientRegistrationCallback)(const char* name, int register, void *arg);
395
406typedef void (*JackPortConnectCallback)(jack_port_id_t a, jack_port_id_t b, int connect, void* arg);
407
415typedef void (*JackFreewheelCallback)(int starting, void *arg);
417typedef void *(*JackThreadCallback)(void* arg);
418
430typedef void (*JackShutdownCallback)(void *arg);
431
445typedef void (*JackInfoShutdownCallback)(jack_status_t code, const char* reason, void *arg);
446
451#define JACK_DEFAULT_AUDIO_TYPE "32 bit float mono audio"
452#define JACK_DEFAULT_MIDI_TYPE "8 bit raw midi"
453
459typedef float jack_default_audio_sample_t;
460
467enum JackPortFlags {
468
473 JackPortIsInput = 0x1,
474
479 JackPortIsOutput = 0x2,
480
485 JackPortIsPhysical = 0x4,
486
500 JackPortCanMonitor = 0x8,
501
517};
518
519
520#endif /* __jack_types_h__ */
Definition types.h:272
jack_nframes_t max
Definition types.h:280
jack_nframes_t min
Definition types.h:276
int(* JackSampleRateCallback)(jack_nframes_t nframes, void *arg)
Definition types.h:360
enum JackOptions jack_options_t
Definition types.h:143
void(* JackShutdownCallback)(void *arg)
Definition types.h:429
void(* JackFreewheelCallback)(int starting, void *arg)
Definition types.h:414
uint64_t jack_uuid_t
Definition types.h:28
void(* JackPortConnectCallback)(jack_port_id_t a, jack_port_id_t b, int connect, void *arg)
Definition types.h:405
void(* JackThreadInitCallback)(void *arg)
Definition types.h:311
JackOptions
Definition types.h:89
@ JackLoadInit
Definition types.h:125
@ JackServerName
Definition types.h:113
@ JackUseExactName
Definition types.h:108
@ JackNoStartServer
Definition types.h:102
@ JackLoadName
Definition types.h:119
@ JackNullOption
Definition types.h:94
@ JackSessionID
Definition types.h:130
void(* JackClientRegistrationCallback)(const char *name, int register, void *arg)
Definition types.h:393
enum JackStatus jack_status_t
Definition types.h:229
uint32_t jack_port_id_t
Definition types.h:77
JackLatencyCallbackMode
Definition types.h:234
@ JackPlaybackLatency
Definition types.h:248
@ JackCaptureLatency
Definition types.h:241
void(* JackPortRegistrationCallback)(jack_port_id_t port, int register, void *arg)
Definition types.h:371
jack_uuid_t jack_intclient_t
Definition types.h:59
struct _jack_port jack_port_t
Definition types.h:65
struct _jack_client jack_client_t
Definition types.h:71
pthread_t jack_native_thread_t
Definition types.h:84
uint32_t jack_nframes_t
Definition types.h:35
int(* JackBufferSizeCallback)(jack_nframes_t nframes, void *arg)
Definition types.h:349
JackStatus
Definition types.h:148
@ JackServerError
Definition types.h:187
@ JackNameNotUnique
Definition types.h:169
@ JackFailure
Definition types.h:153
@ JackLoadFailure
Definition types.h:197
@ JackBackendError
Definition types.h:217
@ JackServerStarted
Definition types.h:177
@ JackVersionError
Definition types.h:212
@ JackInitFailure
Definition types.h:202
@ JackServerFailed
Definition types.h:182
@ JackInvalidOption
Definition types.h:158
@ JackNoSuchClient
Definition types.h:192
@ JackShmFailure
Definition types.h:207
@ JackClientZombie
Definition types.h:222
int32_t jack_shmsize_t
Definition types.h:30
void(* JackPortRenameCallback)(jack_port_id_t port, const char *old_name, const char *new_name, void *arg)
Definition types.h:382
int(* JackProcessCallback)(jack_nframes_t nframes, void *arg)
Definition types.h:297
void(* JackLatencyCallback)(jack_latency_callback_mode_t mode, void *arg)
Definition types.h:266
int(* JackXRunCallback)(void *arg)
Definition types.h:333
int(* JackGraphOrderCallback)(void *arg)
Definition types.h:321
JackPortFlags
Definition types.h:466
@ JackPortCanMonitor
Definition types.h:499
@ JackPortIsPhysical
Definition types.h:484
@ JackPortIsInput
Definition types.h:472
@ JackPortIsOutput
Definition types.h:478
@ JackPortIsTerminal
Definition types.h:515
void(* JackInfoShutdownCallback)(jack_status_t code, const char *reason, void *arg)
Definition types.h:444
enum JackLatencyCallbackMode jack_latency_callback_mode_t
Definition types.h:255
float jack_default_audio_sample_t
Definition types.h:458
uint64_t jack_time_t
Definition types.h:46