X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fcomponent%2Fcomponent-class-internal.h;h=3994edbdea6541bab3d9c00f55bc4f957fcd7880;hb=2d41b99e628ef719c83f11d55d4a88aa9126a35e;hp=320a7d93bd029a74cc71dcc4ceaa64c0dff574d1;hpb=d3e4dcd8e7a601e0aa063455147f29fbe051582b;p=babeltrace.git diff --git a/include/babeltrace/component/component-class-internal.h b/include/babeltrace/component/component-class-internal.h index 320a7d93..3994edbd 100644 --- a/include/babeltrace/component/component-class-internal.h +++ b/include/babeltrace/component/component-class-internal.h @@ -35,6 +35,7 @@ #include #include #include +#include #include struct bt_component_class; @@ -52,18 +53,30 @@ struct bt_component_class { enum bt_component_class_type type; GString *name; GString *description; + GString *help; struct { bt_component_class_init_method init; bt_component_class_destroy_method destroy; + bt_component_class_query_method query; + bt_component_class_new_connection_method new_connection_method; } methods; /* Array of struct bt_component_class_destroy_listener */ GArray *destroy_listeners; + bool frozen; +}; + +struct bt_component_class_iterator_methods { + bt_component_class_notification_iterator_init_method init; + bt_component_class_notification_iterator_destroy_method destroy; + bt_component_class_notification_iterator_get_method get; + bt_component_class_notification_iterator_next_method next; + bt_component_class_notification_iterator_seek_time_method seek_time; }; struct bt_component_class_source { struct bt_component_class parent; struct { - bt_component_class_source_init_iterator_method init_iterator; + struct bt_component_class_iterator_methods iterator; } methods; }; @@ -71,15 +84,13 @@ struct bt_component_class_sink { struct bt_component_class parent; struct { bt_component_class_sink_consume_method consume; - bt_component_class_sink_add_iterator_method add_iterator; } methods; }; struct bt_component_class_filter { struct bt_component_class parent; struct { - bt_component_class_filter_init_iterator_method init_iterator; - bt_component_class_filter_add_iterator_method add_iterator; + struct bt_component_class_iterator_methods iterator; } methods; };