JACK-AUDIO-CONNECTION-KIT: intclient.h File Reference

JACK-AUDIO-CONNECTION-KIT 0.125.0

Functions
intclient.h File Reference
`#include <jack/types.h>`

Go to the source code of this file.

## Functions
char * | jack_get_internal_client_name (jack_client_t *client, jack_intclient_t intclient)
int | jack_internal_client_handle (jack_client_t *client, const char *client_name, jack_status_t *status, jack_intclient_t *handle)
int | jack_internal_client_load (jack_client_t *client, const char *client_name, jack_options_t options, jack_status_t *status, jack_intclient_t,...)
jack_status_t | jack_internal_client_unload (jack_client_t *client, jack_intclient_t intclient)

## Function Documentation

## ◆ jack_get_internal_client_name()

char* jack_get_internal_client_name | ( | jack_client_t * | client,
|  | jack_intclient_t | intclient
| ) |  |

Get an internal client's name. This is useful when JackUseExactName was not specified on jack_internal_client_load() and JackNameNotUnique status was returned. In that case, the actual name will differ from the client_name requested.

Parameters

  client | requesting JACK client's handle.
  intclient | handle returned from jack_internal_client_load() or jack_internal_client_handle().

Returns
  NULL if unsuccessful, otherwise pointer to the internal client name obtained from the heap via malloc(). The caller should free() this storage when no longer needed.

## ◆ jack_internal_client_handle()

int jack_internal_client_handle | ( | jack_client_t * | client,
|  | const char * | client_name,
|  | jack_status_t * | status,
|  | jack_intclient_t * | handle
| ) |  |

Find the jack_intclient_t handle for an internal client running in the JACK server.

Parameters

  client | requesting JACK client's handle.
  client_name | for the internal client of no more than jack_client_name_size() characters. The name scope is local to the current server.
  status | (if non-NULL) an address for JACK to return information from this operation. This status word is formed by OR-ing together the relevant JackStatus bits.
  handle | the client handle will be returned here (passed by reference because of the type.

Returns
  0 if successfullm non-zero otherwise. If non-zero, the internal client was not found, and *status includes the JackNoSuchClient and JackFailure bits.

## ◆ jack_internal_client_load()

int jack_internal_client_load | ( | jack_client_t * | client,
|  | const char * | client_name,
|  | jack_options_t | options,
|  | jack_status_t * | status,
|  | jack_intclient_t | ,
|  |  | ...
| ) |  |

Load an internal client into the JACK server.

Internal clients run inside the JACK server process. They can use most of the same functions as external clients. Each internal client is built as a shared object module, which must declare jack_initialize() and jack_finish() entry points called at load and unload times. See inprocess.c for an example.

Parameters

  client | loading JACK client's handle.
  client_name | of at most jack_client_name_size() characters for the internal client to load. The name scope is local to the current server.
  options | formed by OR-ing together JackOptions bits. Only the JackLoadOptions bits are valid.
  status | (if non-NULL) an address for JACK to return information from the load operation. This status word is formed by OR-ing together the relevant JackStatus bits.
  handle | the client handle will be returned here (passed by reference because of the type.

Optional parameters: depending on corresponding [options bits] additional parameters may follow status (in this order).

- [JackLoadName] (char *) load_name is the shared object file from which to load the new internal client (otherwise use the client_name).

- [JackLoadInit] (char *) load_init an arbitary string passed to the internal client's jack_initialize() routine (otherwise NULL), of no more than JACK_LOAD_INIT_LIMIT bytes.

Returns
  zero if successful, non-zero otherwise. If this is non-zero, the load operation failed, the internal client was not loaded, and *status includes the JackFailure bit.

## ◆ jack_internal_client_unload()

jack_status_t jack_internal_client_unload | ( | jack_client_t * | client,
|  | jack_intclient_t | intclient
| ) |  |

Unload an internal client from a JACK server. This calls the intclient's jack_finish() entry point then removes it. See inprocess.c for an example.

Parameters

  client | unloading JACK client's handle.
  intclient | handle returned from jack_internal_client_load() or jack_internal_client_handle().

Returns
  0 if successful, otherwise JackStatus bits.