From: Jérémie Galarneau Date: Tue, 30 Aug 2016 04:04:53 +0000 (-0400) Subject: Add implementation of bt_component_source_set_iterator_init_cb X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=b916cce643d8faecd21ad82a539dc8d9a79446d7;p=deliverable%2Fbabeltrace.git Add implementation of bt_component_source_set_iterator_init_cb Signed-off-by: Jérémie Galarneau --- diff --git a/lib/plugin-system/source.c b/lib/plugin-system/source.c index 5ec8e4007..e7c4c9af1 100644 --- a/lib/plugin-system/source.c +++ b/lib/plugin-system/source.c @@ -86,6 +86,24 @@ end: return source ? &source->parent : NULL; } +enum bt_component_status +bt_component_source_set_iterator_init_cb(struct bt_component *component, + bt_component_source_init_iterator_cb init_iterator) +{ + struct bt_component_source *source; + enum bt_component_status ret = BT_COMPONENT_STATUS_OK; + + if (component->class->type != BT_COMPONENT_TYPE_SOURCE) { + ret = BT_COMPONENT_STATUS_INVALID; + goto end; + } + + source = container_of(component, struct bt_component_source, parent); + source->init_iterator = init_iterator; +end: + return ret; +} + struct bt_notification_iterator *bt_component_source_create_iterator( struct bt_component *component) {