Go to the source code of this file.
|
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) |
|
◆ jack_get_internal_client_name()
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
-
- 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()
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()
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()
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
-
- Returns
- 0 if successful, otherwise JackStatus bits.