mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-02 09:01:50 -05:00
bluez5: Add transport find function using a test callback
hsphfpd backend needs a way to retrieve bt_transport based on other entries than the path one
This commit is contained in:
parent
7bad76737e
commit
6d0c48cc82
2 changed files with 16 additions and 0 deletions
|
|
@ -817,6 +817,19 @@ struct spa_bt_transport *spa_bt_transport_find(struct spa_bt_monitor *monitor, c
|
|||
return NULL;
|
||||
}
|
||||
|
||||
struct spa_bt_transport *spa_bt_transport_find_full(struct spa_bt_monitor *monitor,
|
||||
bool (*callback) (struct spa_bt_transport *t, const void *data),
|
||||
const void *data)
|
||||
{
|
||||
struct spa_bt_transport *t;
|
||||
|
||||
spa_list_for_each(t, &monitor->transport_list, link)
|
||||
if (callback(t, data) == true)
|
||||
return t;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
struct spa_bt_transport *spa_bt_transport_create(struct spa_bt_monitor *monitor, char *path, size_t extra)
|
||||
{
|
||||
struct spa_bt_transport *t;
|
||||
|
|
|
|||
|
|
@ -258,6 +258,9 @@ struct spa_bt_transport {
|
|||
struct spa_bt_transport *spa_bt_transport_create(struct spa_bt_monitor *monitor, char *path, size_t extra);
|
||||
void spa_bt_transport_free(struct spa_bt_transport *transport);
|
||||
struct spa_bt_transport *spa_bt_transport_find(struct spa_bt_monitor *monitor, const char *path);
|
||||
struct spa_bt_transport *spa_bt_transport_find_full(struct spa_bt_monitor *monitor,
|
||||
bool (*callback) (struct spa_bt_transport *t, const void *data),
|
||||
const void *data);
|
||||
|
||||
#define spa_bt_transport_emit(t,m,v,...) spa_hook_list_call(&(t)->listener_list, \
|
||||
struct spa_bt_transport_events, \
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue