#include <babeltrace/graph/component-sink.h>
#include <babeltrace/graph/component-source.h>
#include <babeltrace/graph/component.h>
+#include <babeltrace/graph/connection.h>
#include <babeltrace/graph/graph.h>
#include <babeltrace/graph/notification-event.h>
#include <babeltrace/graph/notification-inactivity.h>
#include <babeltrace/graph/private-component-sink.h>
#include <babeltrace/graph/private-component.h>
#include <babeltrace/graph/private-connection.h>
-#include <babeltrace/graph/private-notification-iterator.h>
+#include <babeltrace/graph/private-connection-private-notification-iterator.h>
#include <babeltrace/graph/private-port.h>
#include <babeltrace/plugin/plugin.h>
#include <babeltrace/ref.h>
static
void src_iter_finalize(
- struct bt_private_notification_iterator *private_notification_iterator)
+ struct bt_private_connection_private_notification_iterator *private_notification_iterator)
{
struct src_iter_user_data *user_data =
- bt_private_notification_iterator_get_user_data(
+ bt_private_connection_private_notification_iterator_get_user_data(
private_notification_iterator);
if (user_data) {
static
enum bt_notification_iterator_status src_iter_init(
- struct bt_private_notification_iterator *priv_notif_iter,
+ struct bt_private_connection_private_notification_iterator *priv_notif_iter,
struct bt_private_port *private_port)
{
struct src_iter_user_data *user_data =
int ret;
assert(user_data);
- ret = bt_private_notification_iterator_set_user_data(priv_notif_iter,
+ ret = bt_private_connection_private_notification_iterator_set_user_data(priv_notif_iter,
user_data);
assert(ret == 0);
}
static
-struct bt_notification_iterator_next_return src_iter_next_seq(
+struct bt_notification_iterator_next_method_return src_iter_next_seq(
struct src_iter_user_data *user_data)
{
- struct bt_notification_iterator_next_return next_return = {
+ struct bt_notification_iterator_next_method_return next_return = {
.status = BT_NOTIFICATION_ITERATOR_STATUS_OK,
};
int64_t cur_ts_ns;
}
static
-struct bt_notification_iterator_next_return src_iter_next(
- struct bt_private_notification_iterator *priv_iterator)
+struct bt_notification_iterator_next_method_return src_iter_next(
+ struct bt_private_connection_private_notification_iterator *priv_iterator)
{
- struct bt_notification_iterator_next_return next_return = {
+ struct bt_notification_iterator_next_method_return next_return = {
.status = BT_NOTIFICATION_ITERATOR_STATUS_OK,
.notification = NULL,
};
struct src_iter_user_data *user_data =
- bt_private_notification_iterator_get_user_data(priv_iterator);
+ bt_private_connection_private_notification_iterator_get_user_data(priv_iterator);
assert(user_data);
next_return = src_iter_next_seq(user_data);
bt_private_port_get_private_connection(self_private_port);
struct sink_user_data *user_data = bt_private_component_get_user_data(
private_component);
+ enum bt_connection_status conn_status;
assert(user_data);
assert(priv_conn);
- user_data->notif_iter =
- bt_private_connection_create_notification_iterator(priv_conn,
- NULL);
- assert(user_data->notif_iter);
+ conn_status = bt_private_connection_create_notification_iterator(
+ priv_conn, NULL, &user_data->notif_iter);
+ assert(conn_status == 0);
bt_put(priv_conn);
}
}
static
-void create_source_sink(struct bt_component **source,
+void create_source_sink(struct bt_graph *graph, struct bt_component **source,
struct bt_component **sink)
{
struct bt_component_class *src_comp_class;
ret = bt_component_class_source_set_notification_iterator_finalize_method(
src_comp_class, src_iter_finalize);
assert(ret == 0);
- *source = bt_component_create(src_comp_class, "source", NULL);
- assert(*source);
+ ret = bt_graph_add_component(graph, src_comp_class, "source", NULL,
+ source);
+ assert(ret == 0);
/* Create sink component */
sink_comp_class = bt_component_class_sink_create("sink", sink_consume);
ret = bt_component_class_set_port_connected_method(sink_comp_class,
sink_port_connected);
assert(ret == 0);
- *sink = bt_component_create(sink_comp_class, "sink", NULL);
+ ret = bt_graph_add_component(graph, sink_comp_class, "sink", NULL,
+ sink);
+ assert(ret == 0);
bt_put(src_comp_class);
bt_put(sink_comp_class);
clear_test_events();
current_test = test;
diag("test: %s", name);
- create_source_sink(&src_comp, &sink_comp);
graph = bt_graph_create();
assert(graph);
+ create_source_sink(graph, &src_comp, &sink_comp);
/* Connect source to sink */
upstream_port = bt_component_source_get_output_port_by_name(src_comp, "out");