BT_GRAPH_STATUS_NO_SINK = -6,
/** General error. */
BT_GRAPH_STATUS_ERROR = -1,
+ BT_GRAPH_STATUS_CANNOT_CONSUME = -2,
BT_GRAPH_STATUS_NOMEM = -12,
};
struct bt_component *downstream_component,
struct bt_port *upstream_port, struct bt_port *downstream_port,
void *data);
+typedef void (* bt_graph_listener_removed)(void *data);
extern struct bt_graph *bt_graph_create(void);
extern enum bt_graph_status bt_graph_consume(struct bt_graph *graph);
extern int bt_graph_add_port_added_listener(struct bt_graph *graph,
- bt_graph_port_added_listener listener, void *data);
+ bt_graph_port_added_listener listener,
+ bt_graph_listener_removed listener_removed, void *data);
extern int bt_graph_add_port_removed_listener(struct bt_graph *graph,
- bt_graph_port_removed_listener listener, void *data);
+ bt_graph_port_removed_listener listener,
+ bt_graph_listener_removed listener_removed, void *data);
extern int bt_graph_add_ports_connected_listener(struct bt_graph *graph,
- bt_graph_ports_connected_listener listener, void *data);
+ bt_graph_ports_connected_listener listener,
+ bt_graph_listener_removed listener_removed, void *data);
extern int bt_graph_add_ports_disconnected_listener(struct bt_graph *graph,
- bt_graph_ports_disconnected_listener listener, void *data);
+ bt_graph_ports_disconnected_listener listener,
+ bt_graph_listener_removed listener_removed, void *data);
extern enum bt_graph_status bt_graph_cancel(struct bt_graph *graph);
extern bt_bool bt_graph_is_canceled(struct bt_graph *graph);