types.h File Reference

#include <inttypes.h>

Go to the source code of this file.

Defines

#define JACK_MAX_FRAMES   (4294967295U)
#define JACK_DEFAULT_AUDIO_TYPE   "32 bit float mono audio"

Typedefs

typedef char shm_name_t [32]
typedef int32_t jack_shmsize_t
typedef uint32_t jack_nframes_t
typedef uint64_t jack_time_t
typedef _jack_port jack_port_t
typedef _jack_client jack_client_t
typedef uint32_t jack_port_id_t
typedef int(* JackProcessCallback )(jack_nframes_t nframes, void *arg)
typedef void(* JackThreadInitCallback )(void *arg)
typedef int(* JackGraphOrderCallback )(void *arg)
typedef int(* JackXRunCallback )(void *arg)
typedef int(* JackBufferSizeCallback )(jack_nframes_t nframes, void *arg)
typedef int(* JackSampleRateCallback )(jack_nframes_t nframes, void *arg)
typedef void(* JackPortRegistrationCallback )(jack_port_id_t port, int, void *arg)
typedef void(* JackFreewheelCallback )(int starting, void *arg)
typedef float jack_default_audio_sample_t

Enumerations

enum  JackPortFlags {
  JackPortIsInput = 0x1, JackPortIsOutput = 0x2, JackPortIsPhysical = 0x4, JackPortCanMonitor = 0x8,
  JackPortIsTerminal = 0x10
}


Define Documentation

#define JACK_DEFAULT_AUDIO_TYPE   "32 bit float mono audio"
 

Used for the type argument of jack_port_register() for default audio ports.

#define JACK_MAX_FRAMES   (4294967295U)
 

Maximum value that can be stored in jack_nframes_t


Typedef Documentation

typedef struct _jack_client jack_client_t
 

jack_client_t is an opaque type. You may only access it using the API provided.

typedef float jack_default_audio_sample_t
 

For convenience, use this typedef if you want to be able to change between float and double. You may want to typedef sample_t to jack_default_audio_sample_t in your application.

typedef uint32_t jack_nframes_t
 

Type used to represent sample frame counts.

typedef uint32_t jack_port_id_t
 

Ports have unique ids. A port registration callback is the only place you ever need to know their value.

typedef struct _jack_port jack_port_t
 

jack_port_t is an opaque type. You may only access it using the API provided.

typedef int32_t jack_shmsize_t
 

typedef uint64_t jack_time_t
 

Type used to represent the value of free running monotonic clock with units of microseconds.

typedef int(* JackBufferSizeCallback)(jack_nframes_t nframes, void *arg)
 

Prototype for the bufsize_callback that is invoked whenever the JACK engine buffer size changes. Although this function is called in the JACK process thread, the normal process cycle is suspended during its operation, causing a gap in the audio flow. So, the bufsize_callback can allocate storage, touch memory not previously referenced, and perform other operations that are not realtime safe.

Parameters:
nframes buffer size
arg pointer supplied by jack_set_buffer_size_callback().
Returns:
zero on success, non-zero on error

typedef void(* JackFreewheelCallback)(int starting, void *arg)
 

Prototype for the client supplied function that is called whenever jackd starts or stops freewheeling.

Parameters:
starting non-zero if we start starting to freewheel, zero otherwise
arg pointer to a client supplied structure

typedef int(* JackGraphOrderCallback)(void *arg)
 

Prototype for the client supplied function that is called whenever the processing graph is reordered.

Parameters:
arg pointer to a client supplied structure
Returns:
zero on success, non-zero on error

typedef void(* JackPortRegistrationCallback)(jack_port_id_t port, int, void *arg)
 

Prototype for the client supplied function that is called whenever a port is registered or unregistered.

Parameters:
arg pointer to a client supplied structure

typedef int(* JackProcessCallback)(jack_nframes_t nframes, void *arg)
 

Prototype for the client supplied function that is called by the engine anytime there is work to be done.

Precondition:
nframes == jack_get_buffer_size()

nframes == pow(2,x)

Parameters:
nframes number of frames to process
arg pointer to a client supplied structure
Returns:
zero on success, non-zero on error

typedef int(* JackSampleRateCallback)(jack_nframes_t nframes, void *arg)
 

Prototype for the client supplied function that is called when the engine sample rate changes.

Parameters:
nframes new engine sample rate
arg pointer to a client supplied structure
Returns:
zero on success, non-zero on error

typedef void(* JackThreadInitCallback)(void *arg)
 

Prototype for the client supplied function that is called once after the creation of the thread in which other callbacks will be made. Special thread characteristics can be set from this callback, for example. This is a highly specialized callback and most clients will not and should not use it.

Parameters:
arg pointer to a client supplied structure
Returns:
void

typedef int(* JackXRunCallback)(void *arg)
 

Prototype for the client supplied function that is called whenever an xrun has occured.

Parameters:
arg pointer to a client supplied structure
Returns:
zero on success, non-zero on error

typedef char shm_name_t[32]
 


Enumeration Type Documentation

enum JackPortFlags
 

A port has a set of flags that are formed by AND-ing together the desired values from the list below. The flags "JackPortIsInput" and "JackPortIsOutput" are mutually exclusive and it is an error to use them both.

Enumeration values:
JackPortIsInput  if JackPortIsInput is set, then the port can receive data.
JackPortIsOutput  if JackPortIsOutput is set, then data can be read from the port.
JackPortIsPhysical  if JackPortIsPhysical is set, then the port corresponds to some kind of physical I/O connector.
JackPortCanMonitor  if JackPortCanMonitor is set, then a call to jack_port_request_monitor() makes sense.

Precisely what this means is dependent on the client. A typical result of it being called with TRUE as the second argument is that data that would be available from an output port (with JackPortIsPhysical set) is sent to a physical output connector as well, so that it can be heard/seen/whatever.

Clients that do not control physical interfaces should never create ports with this bit set.

JackPortIsTerminal  JackPortIsTerminal means:

for an input port: the data received by the port will not be passed on or made available at any other port

for an output port: the data available at the port does not originate from any other port

Audio synthesizers, I/O hardware interface clients, HDR systems are examples of clients that would set this flag for their ports.


Generated on Sun Sep 19 10:22:22 2004 for JACK-AUDIO-CONNECTION-KIT by doxygen 1.3.8