@@ -297,6 +297,8 @@ JACKBRIDGE_API char* jackbridge_client_get_uuid(jack_client_t* client); | |||||
JACKBRIDGE_API char* jackbridge_get_uuid_for_client_name(jack_client_t* client, const char* name); | JACKBRIDGE_API char* jackbridge_get_uuid_for_client_name(jack_client_t* client, const char* name); | ||||
JACKBRIDGE_API char* jackbridge_get_client_name_by_uuid(jack_client_t* client, const char* uuid); | JACKBRIDGE_API char* jackbridge_get_client_name_by_uuid(jack_client_t* client, const char* uuid); | ||||
JACKBRIDGE_API bool jackbridge_uuid_parse(const char* buf, jack_uuid_t* uuid); | |||||
JACKBRIDGE_API bool jackbridge_activate(jack_client_t* client); | JACKBRIDGE_API bool jackbridge_activate(jack_client_t* client); | ||||
JACKBRIDGE_API bool jackbridge_deactivate(jack_client_t* client); | JACKBRIDGE_API bool jackbridge_deactivate(jack_client_t* client); | ||||
JACKBRIDGE_API bool jackbridge_is_realtime(jack_client_t* client); | JACKBRIDGE_API bool jackbridge_is_realtime(jack_client_t* client); | ||||
@@ -68,6 +68,8 @@ typedef char* (JACKSYM_API *jacksym_client_get_uuid)(jack_client_t*); | |||||
typedef char* (JACKSYM_API *jacksym_get_uuid_for_client_name)(jack_client_t*, const char*); | typedef char* (JACKSYM_API *jacksym_get_uuid_for_client_name)(jack_client_t*, const char*); | ||||
typedef char* (JACKSYM_API *jacksym_get_client_name_by_uuid)(jack_client_t*, const char*); | typedef char* (JACKSYM_API *jacksym_get_client_name_by_uuid)(jack_client_t*, const char*); | ||||
typedef int (JACKBRIDGE_API *jacksym_uuid_parse)(const char*, jack_uuid_t*); | |||||
typedef int (JACKSYM_API *jacksym_activate)(jack_client_t*); | typedef int (JACKSYM_API *jacksym_activate)(jack_client_t*); | ||||
typedef int (JACKSYM_API *jacksym_deactivate)(jack_client_t*); | typedef int (JACKSYM_API *jacksym_deactivate)(jack_client_t*); | ||||
typedef int (JACKSYM_API *jacksym_is_realtime)(jack_client_t*); | typedef int (JACKSYM_API *jacksym_is_realtime)(jack_client_t*); | ||||
@@ -192,6 +194,8 @@ struct JackBridge { | |||||
jacksym_get_uuid_for_client_name get_uuid_for_client_name_ptr; | jacksym_get_uuid_for_client_name get_uuid_for_client_name_ptr; | ||||
jacksym_get_client_name_by_uuid get_client_name_by_uuid_ptr; | jacksym_get_client_name_by_uuid get_client_name_by_uuid_ptr; | ||||
jacksym_uuid_parse uuid_parse_ptr; | |||||
jacksym_activate activate_ptr; | jacksym_activate activate_ptr; | ||||
jacksym_deactivate deactivate_ptr; | jacksym_deactivate deactivate_ptr; | ||||
jacksym_is_realtime is_realtime_ptr; | jacksym_is_realtime is_realtime_ptr; | ||||
@@ -306,6 +310,7 @@ struct JackBridge { | |||||
client_get_uuid_ptr(nullptr), | client_get_uuid_ptr(nullptr), | ||||
get_uuid_for_client_name_ptr(nullptr), | get_uuid_for_client_name_ptr(nullptr), | ||||
get_client_name_by_uuid_ptr(nullptr), | get_client_name_by_uuid_ptr(nullptr), | ||||
uuid_parse_ptr(nullptr), | |||||
activate_ptr(nullptr), | activate_ptr(nullptr), | ||||
deactivate_ptr(nullptr), | deactivate_ptr(nullptr), | ||||
is_realtime_ptr(nullptr), | is_realtime_ptr(nullptr), | ||||
@@ -429,6 +434,8 @@ struct JackBridge { | |||||
LIB_SYMBOL(get_uuid_for_client_name) | LIB_SYMBOL(get_uuid_for_client_name) | ||||
LIB_SYMBOL(get_client_name_by_uuid) | LIB_SYMBOL(get_client_name_by_uuid) | ||||
LIB_SYMBOL(uuid_parse) | |||||
LIB_SYMBOL(activate) | LIB_SYMBOL(activate) | ||||
LIB_SYMBOL(deactivate) | LIB_SYMBOL(deactivate) | ||||
LIB_SYMBOL(is_realtime) | LIB_SYMBOL(is_realtime) | ||||
@@ -915,6 +922,20 @@ char* jackbridge_get_client_name_by_uuid(jack_client_t* client, const char* uuid | |||||
// ----------------------------------------------------------------------------- | // ----------------------------------------------------------------------------- | ||||
bool jackbridge_uuid_parse(const char* buf, jack_uuid_t* uuid) | |||||
{ | |||||
#if defined(JACKBRIDGE_DUMMY) | |||||
#elif defined(JACKBRIDGE_DIRECT) | |||||
return (jack_uuid_parse(buf, uuid) == 0); | |||||
#else | |||||
if (const jacksym_uuid_parse func = getBridgeInstance().uuid_parse_ptr) | |||||
return (func(buf, uuid) == 0); | |||||
#endif | |||||
return false; | |||||
} | |||||
// ----------------------------------------------------------------------------- | |||||
bool jackbridge_activate(jack_client_t* client) | bool jackbridge_activate(jack_client_t* client) | ||||
{ | { | ||||
#if defined(JACKBRIDGE_DUMMY) | #if defined(JACKBRIDGE_DUMMY) | ||||
@@ -47,6 +47,7 @@ const JackBridgeExportedFunctions* JACKBRIDGE_API jackbridge_get_exported_functi | |||||
funcs.client_get_uuid_ptr = jackbridge_client_get_uuid; | funcs.client_get_uuid_ptr = jackbridge_client_get_uuid; | ||||
funcs.get_uuid_for_client_name_ptr = jackbridge_get_uuid_for_client_name; | funcs.get_uuid_for_client_name_ptr = jackbridge_get_uuid_for_client_name; | ||||
funcs.get_client_name_by_uuid_ptr = jackbridge_get_client_name_by_uuid; | funcs.get_client_name_by_uuid_ptr = jackbridge_get_client_name_by_uuid; | ||||
funcs.uuid_parse_ptr = jackbridge_uuid_parse; | |||||
funcs.activate_ptr = jackbridge_activate; | funcs.activate_ptr = jackbridge_activate; | ||||
funcs.deactivate_ptr = jackbridge_deactivate; | funcs.deactivate_ptr = jackbridge_deactivate; | ||||
funcs.is_realtime_ptr = jackbridge_is_realtime; | funcs.is_realtime_ptr = jackbridge_is_realtime; | ||||
@@ -143,6 +143,11 @@ char* jackbridge_get_client_name_by_uuid(jack_client_t* client, const char* uuid | |||||
return getBridgeInstance().get_client_name_by_uuid_ptr(client, uuid); | return getBridgeInstance().get_client_name_by_uuid_ptr(client, uuid); | ||||
} | } | ||||
bool jackbridge_uuid_parse(const char* buf, jack_uuid_t* uuid) | |||||
{ | |||||
return getBridgeInstance().uuid_parse_ptr(buf, uuid); | |||||
} | |||||
bool jackbridge_activate(jack_client_t* client) | bool jackbridge_activate(jack_client_t* client) | ||||
{ | { | ||||
return getBridgeInstance().activate_ptr(client); | return getBridgeInstance().activate_ptr(client); | ||||
@@ -30,6 +30,7 @@ typedef char* (JACKBRIDGE_API *jackbridgesym_get_client_name)(jack_client_t*); | |||||
typedef char* (JACKBRIDGE_API *jackbridgesym_client_get_uuid)(jack_client_t*); | typedef char* (JACKBRIDGE_API *jackbridgesym_client_get_uuid)(jack_client_t*); | ||||
typedef char* (JACKBRIDGE_API *jackbridgesym_get_uuid_for_client_name)(jack_client_t*, const char*); | typedef char* (JACKBRIDGE_API *jackbridgesym_get_uuid_for_client_name)(jack_client_t*, const char*); | ||||
typedef char* (JACKBRIDGE_API *jackbridgesym_get_client_name_by_uuid)(jack_client_t*, const char*); | typedef char* (JACKBRIDGE_API *jackbridgesym_get_client_name_by_uuid)(jack_client_t*, const char*); | ||||
typedef bool (JACKBRIDGE_API *jackbridgesym_uuid_parse)(const char*, jack_uuid_t*); | |||||
typedef bool (JACKBRIDGE_API *jackbridgesym_activate)(jack_client_t*); | typedef bool (JACKBRIDGE_API *jackbridgesym_activate)(jack_client_t*); | ||||
typedef bool (JACKBRIDGE_API *jackbridgesym_deactivate)(jack_client_t*); | typedef bool (JACKBRIDGE_API *jackbridgesym_deactivate)(jack_client_t*); | ||||
typedef bool (JACKBRIDGE_API *jackbridgesym_is_realtime)(jack_client_t*); | typedef bool (JACKBRIDGE_API *jackbridgesym_is_realtime)(jack_client_t*); | ||||
@@ -137,6 +138,7 @@ struct _JackBridgeExportedFunctions { | |||||
jackbridgesym_client_get_uuid client_get_uuid_ptr; | jackbridgesym_client_get_uuid client_get_uuid_ptr; | ||||
jackbridgesym_get_uuid_for_client_name get_uuid_for_client_name_ptr; | jackbridgesym_get_uuid_for_client_name get_uuid_for_client_name_ptr; | ||||
jackbridgesym_get_client_name_by_uuid get_client_name_by_uuid_ptr; | jackbridgesym_get_client_name_by_uuid get_client_name_by_uuid_ptr; | ||||
jackbridgesym_uuid_parse uuid_parse_ptr; | |||||
jackbridgesym_activate activate_ptr; | jackbridgesym_activate activate_ptr; | ||||
jackbridgesym_deactivate deactivate_ptr; | jackbridgesym_deactivate deactivate_ptr; | ||||
jackbridgesym_is_realtime is_realtime_ptr; | jackbridgesym_is_realtime is_realtime_ptr; | ||||