types.h

Go to the documentation of this file.
00001 /*
00002     Copyright (C) 2001 Paul Davis
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     $Id: types.h,v 1.25 2004/04/07 02:32:27 pbd Exp $
00019 */
00020 
00021 #ifndef __jack_types_h__
00022 #define __jack_types_h__
00023 
00024 #include <inttypes.h>
00025 
00026 typedef char    shm_name_t[32];
00027 typedef int32_t jack_shmsize_t;
00028 
00032 typedef uint32_t             jack_nframes_t;
00033 
00037 #define JACK_MAX_FRAMES (4294967295U)   /* This should be UINT32_MAX, but
00038                                            C++ has a problem with that. */
00039 
00044 typedef uint64_t jack_time_t;
00045 
00050 typedef struct _jack_port    jack_port_t;
00051 
00056 typedef struct _jack_client  jack_client_t;
00057 
00062 typedef uint32_t             jack_port_id_t;
00063 
00076 typedef int  (*JackProcessCallback)(jack_nframes_t nframes, void *arg);
00077 
00090 typedef void  (*JackThreadInitCallback)(void *arg);
00091 
00100 typedef int  (*JackGraphOrderCallback)(void *arg);
00101 
00110 typedef int  (*JackXRunCallback)(void *arg);
00111 
00126 typedef int  (*JackBufferSizeCallback)(jack_nframes_t nframes, void *arg);
00127 
00137 typedef int  (*JackSampleRateCallback)(jack_nframes_t nframes, void *arg);
00138 
00145 typedef void (*JackPortRegistrationCallback)(jack_port_id_t port, int, void *arg);
00146 
00154 typedef void (*JackFreewheelCallback)(int starting, void *arg);
00155 
00160 #define JACK_DEFAULT_AUDIO_TYPE "32 bit float mono audio"
00161 
00167 typedef float jack_default_audio_sample_t;
00168 
00175 enum JackPortFlags {
00176 
00181      JackPortIsInput = 0x1,
00182 
00187      JackPortIsOutput = 0x2,
00188 
00193      JackPortIsPhysical = 0x4, 
00194 
00208      JackPortCanMonitor = 0x8,
00209 
00224      JackPortIsTerminal = 0x10
00225 };          
00226 
00227 #endif /* __jack_types_h__ */

Generated on Sat Apr 24 21:31:42 2004 for JACK-AUDIO-CONNECTION-KIT by doxygen 1.3.4