From: Jérémie Galarneau Date: Tue, 6 Sep 2016 20:11:57 +0000 (-0400) Subject: Add reading loop to babeltrace binary X-Git-Tag: v2.0.0-pre1~769 X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=9029835781174a8246aca6ecc328ac0d2a268674 Add reading loop to babeltrace binary Signed-off-by: Jérémie Galarneau --- diff --git a/converter/babeltrace.c b/converter/babeltrace.c index cd7bd7c4..36db88d1 100644 --- a/converter/babeltrace.c +++ b/converter/babeltrace.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -201,6 +202,7 @@ int main(int argc, char **argv) struct bt_component_class *source_class = NULL, *sink_class = NULL; struct bt_component *source = NULL, *sink = NULL; struct bt_value *source_params = NULL, *sink_params = NULL; + struct bt_notification_iterator *it = NULL; ret = parse_options(argc, argv); if (ret < 0) { @@ -280,6 +282,19 @@ int main(int argc, char **argv) goto end; } + it = bt_component_source_create_iterator(source); + if (!it) { + fprintf(stderr, "Failed to instantiate source iterator. Aborting...\n"); + ret = -1; + goto end; + } + + do { + struct bt_notification *notification = + bt_notification_iterator_get_notification(it); + BT_PUT(notification); + } while (bt_notification_iterator_next(it) == + BT_NOTIFICATION_ITERATOR_STATUS_OK); /* teardown and exit */ end: BT_PUT(component_factory); @@ -289,5 +304,6 @@ end: BT_PUT(sink); BT_PUT(source_params); BT_PUT(sink_params); + BT_PUT(it); return ret ? 1 : 0; }