struct bt_component_sink *sink);
BT_HIDDEN
-void bt_graph_notify_port_added(struct bt_graph *graph, struct bt_port *port);
+enum bt_graph_listener_status bt_graph_notify_port_added(struct bt_graph *graph,
+ struct bt_port *port);
BT_HIDDEN
-void bt_graph_notify_ports_connected(struct bt_graph *graph,
- struct bt_port *upstream_port, struct bt_port *downstream_port);
+enum bt_graph_listener_status bt_graph_notify_ports_connected(
+ struct bt_graph *graph, struct bt_port *upstream_port,
+ struct bt_port *downstream_port);
BT_HIDDEN
void bt_graph_remove_connection(struct bt_graph *graph,
return "BT_GRAPH_STATUS_END";
case BT_GRAPH_STATUS_OK:
return "BT_GRAPH_STATUS_OK";
- case BT_GRAPH_STATUS_NO_SINK:
- return "BT_GRAPH_STATUS_NO_SINK";
case BT_GRAPH_STATUS_ERROR:
return "BT_GRAPH_STATUS_ERROR";
case BT_GRAPH_STATUS_COMPONENT_REFUSES_PORT_CONNECTION:
goto end;
}
+#ifdef BT_ASSERT_PRE
+ BT_ASSERT_PRE(graph->has_sink, "Graph has no sink component: %!+g", graph);
+#endif
+
graph->config_state = BT_GRAPH_CONFIGURATION_STATE_PARTIALLY_CONFIGURED;
for (i = 0; i < graph->components->len; i++) {
return status;
}
+static inline
+void bt_graph_make_faulty(struct bt_graph *graph)
+{
+ graph->config_state = BT_GRAPH_CONFIGURATION_STATE_FAULTY;
+#ifdef BT_LIB_LOGD
+ BT_LIB_LOGD("Set graph's state to faulty: %![graph-]+g", graph);
+#endif
+}
+
#endif /* BABELTRACE_GRAPH_GRAPH_INTERNAL_H */