bluez: expose transport_set_state method to backends

This commit is contained in:
George Kiagiadakis 2021-03-18 22:07:47 +02:00 committed by Wim Taymans
parent 34425a8027
commit 9b788b5a66
2 changed files with 5 additions and 3 deletions

View file

@ -1391,7 +1391,8 @@ struct spa_bt_transport *spa_bt_transport_create(struct spa_bt_monitor *monitor,
return t; return t;
} }
static void transport_set_state(struct spa_bt_transport *transport, enum spa_bt_transport_state state)
void spa_bt_transport_set_state(struct spa_bt_transport *transport, enum spa_bt_transport_state state)
{ {
struct spa_bt_monitor *monitor = transport->monitor; struct spa_bt_monitor *monitor = transport->monitor;
enum spa_bt_transport_state old = transport->state; enum spa_bt_transport_state old = transport->state;
@ -1412,7 +1413,7 @@ void spa_bt_transport_free(struct spa_bt_transport *transport)
spa_log_debug(monitor->log, "transport %p: free %s", transport, transport->path); spa_log_debug(monitor->log, "transport %p: free %s", transport, transport->path);
transport_set_state(transport, SPA_BT_TRANSPORT_STATE_IDLE); spa_bt_transport_set_state(transport, SPA_BT_TRANSPORT_STATE_IDLE);
spa_bt_transport_emit_destroy(transport); spa_bt_transport_emit_destroy(transport);
@ -1656,7 +1657,7 @@ static int transport_update_props(struct spa_bt_transport *transport,
} }
} }
else if (strcmp(key, "State") == 0) { else if (strcmp(key, "State") == 0) {
transport_set_state(transport, spa_bt_transport_state_from_string(value)); spa_bt_transport_set_state(transport, spa_bt_transport_state_from_string(value));
} }
else if (strcmp(key, "Device") == 0) { else if (strcmp(key, "Device") == 0) {
transport->device = spa_bt_device_find(monitor, value); transport->device = spa_bt_device_find(monitor, value);

View file

@ -507,6 +507,7 @@ struct spa_bt_transport {
struct spa_bt_transport *spa_bt_transport_create(struct spa_bt_monitor *monitor, char *path, size_t extra); 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); void spa_bt_transport_free(struct spa_bt_transport *transport);
void spa_bt_transport_set_state(struct spa_bt_transport *transport, enum spa_bt_transport_state state);
struct spa_bt_transport *spa_bt_transport_find(struct spa_bt_monitor *monitor, const char *path); 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, struct spa_bt_transport *spa_bt_transport_find_full(struct spa_bt_monitor *monitor,
bool (*callback) (struct spa_bt_transport *t, const void *data), bool (*callback) (struct spa_bt_transport *t, const void *data),