X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fgraph%2Fcomponent-class-source.h;h=4a7088151fb4dc3d3aeb92f08fb0f7f367210eeb;hb=7e69c04f557e46fb50e5a888a3bc3451afbd3b8e;hp=6bf0a8acd7cb1c0f6910fde81863b9c855494ba3;hpb=e2f7325d1e58710ee928373592adcee466f93d06;p=babeltrace.git diff --git a/include/babeltrace/graph/component-class-source.h b/include/babeltrace/graph/component-class-source.h index 6bf0a8ac..4a708815 100644 --- a/include/babeltrace/graph/component-class-source.h +++ b/include/babeltrace/graph/component-class-source.h @@ -26,122 +26,157 @@ #include -/* For enum bt_notification_array_const */ -#include - -/* For enum bt_self_component_status */ +/* For bt_self_component_status */ #include -/* For enum bt_self_notification_iterator_status */ -#include +/* For bt_self_message_iterator_status */ +#include -/* For enum bt_query_status */ +/* For bt_query_status */ #include +/* For bt_component_class_status */ +#include + +/* + * For bt_component_class, bt_component_class_source, bt_port_input, + * bt_query_executor, bt_self_component_class_source, + * bt_self_component_source, bt_self_component_port_output, bt_value, + * bt_message_array_const, bt_bool, bt_self_message_iterator, + * __BT_UPCAST + */ +#include + #ifdef __cplusplus extern "C" { #endif -struct bt_self_component_class_source; -struct bt_component_class_source; -struct bt_self_component_source; -struct bt_component_class_source; -struct bt_self_component_port_output; -struct bt_port_input; -struct bt_query_executor; -struct bt_value; - -typedef enum bt_self_component_status +typedef bt_self_component_status (*bt_component_class_source_init_method)( - struct bt_self_component_source *self_component, - const struct bt_value *params, void *init_method_data); + bt_self_component_source *self_component, + const bt_value *params, void *init_method_data); typedef void (*bt_component_class_source_finalize_method)( - struct bt_self_component_source *self_component); + bt_self_component_source *self_component); -typedef enum bt_self_notification_iterator_status -(*bt_component_class_source_notification_iterator_init_method)( - struct bt_self_notification_iterator *notification_iterator, - struct bt_self_component_source *self_component, - struct bt_self_component_port_output *port); +typedef bt_self_message_iterator_status +(*bt_component_class_source_message_iterator_init_method)( + bt_self_message_iterator *message_iterator, + bt_self_component_source *self_component, + bt_self_component_port_output *port); typedef void -(*bt_component_class_source_notification_iterator_finalize_method)( - struct bt_self_notification_iterator *notification_iterator); +(*bt_component_class_source_message_iterator_finalize_method)( + bt_self_message_iterator *message_iterator); -typedef enum bt_self_notification_iterator_status -(*bt_component_class_source_notification_iterator_next_method)( - struct bt_self_notification_iterator *notification_iterator, - bt_notification_array_const notifs, uint64_t capacity, +typedef bt_self_message_iterator_status +(*bt_component_class_source_message_iterator_next_method)( + bt_self_message_iterator *message_iterator, + bt_message_array_const msgs, uint64_t capacity, uint64_t *count); -typedef enum bt_query_status -(*bt_component_class_source_query_method)( - struct bt_self_component_class_source *comp_class, - const struct bt_query_executor *query_executor, - const char *object, const struct bt_value *params, - const struct bt_value **result); +typedef bt_self_message_iterator_status +(*bt_component_class_source_message_iterator_seek_ns_from_origin_method)( + bt_self_message_iterator *message_iterator, + int64_t ns_from_origin); + +typedef bt_self_message_iterator_status +(*bt_component_class_source_message_iterator_seek_beginning_method)( + bt_self_message_iterator *message_iterator); -typedef enum bt_self_component_status +typedef bt_bool +(*bt_component_class_source_message_iterator_can_seek_ns_from_origin_method)( + bt_self_message_iterator *message_iterator, + int64_t ns_from_origin); + +typedef bt_bool +(*bt_component_class_source_message_iterator_can_seek_beginning_method)( + bt_self_message_iterator *message_iterator); + +typedef bt_query_status (*bt_component_class_source_query_method)( + bt_self_component_class_source *comp_class, + const bt_query_executor *query_executor, + const char *object, const bt_value *params, + const bt_value **result); + +typedef bt_self_component_status (*bt_component_class_source_accept_output_port_connection_method)( - struct bt_self_component_source *self_component, - struct bt_self_component_port_output *self_port, - const struct bt_port_input *other_port); + bt_self_component_source *self_component, + bt_self_component_port_output *self_port, + const bt_port_input *other_port); -typedef enum bt_self_component_status +typedef bt_self_component_status (*bt_component_class_source_output_port_connected_method)( - struct bt_self_component_source *self_component, - struct bt_self_component_port_output *self_port, - const struct bt_port_input *other_port); - -typedef void -(*bt_component_class_source_output_port_disconnected_method)( - struct bt_self_component_source *self_component, - struct bt_self_component_port_output *self_port); + bt_self_component_source *self_component, + bt_self_component_port_output *self_port, + const bt_port_input *other_port); static inline -struct bt_component_class *bt_component_class_source_as_component_class( - struct bt_component_class_source *comp_cls_source) +bt_component_class *bt_component_class_source_as_component_class( + bt_component_class_source *comp_cls_source) { - return (void *) comp_cls_source; + return __BT_UPCAST(bt_component_class, comp_cls_source); } extern -struct bt_component_class_source *bt_component_class_source_create( +bt_component_class_source *bt_component_class_source_create( const char *name, - bt_component_class_source_notification_iterator_next_method method); + bt_component_class_source_message_iterator_next_method method); -extern int bt_component_class_source_set_init_method( - struct bt_component_class_source *comp_class, +extern bt_component_class_status +bt_component_class_source_set_init_method( + bt_component_class_source *comp_class, bt_component_class_source_init_method method); -extern int bt_component_class_source_set_finalize_method( - struct bt_component_class_source *comp_class, +extern bt_component_class_status +bt_component_class_source_set_finalize_method( + bt_component_class_source *comp_class, bt_component_class_source_finalize_method method); -extern int bt_component_class_source_set_accept_output_port_connection_method( - struct bt_component_class_source *comp_class, +extern bt_component_class_status +bt_component_class_source_set_accept_output_port_connection_method( + bt_component_class_source *comp_class, bt_component_class_source_accept_output_port_connection_method method); -extern int bt_component_class_source_set_output_port_connected_method( - struct bt_component_class_source *comp_class, +extern bt_component_class_status +bt_component_class_source_set_output_port_connected_method( + bt_component_class_source *comp_class, bt_component_class_source_output_port_connected_method method); -extern int bt_component_class_source_set_output_port_disconnected_method( - struct bt_component_class_source *comp_class, - bt_component_class_source_output_port_disconnected_method method); - -extern int bt_component_class_source_set_query_method( - struct bt_component_class_source *comp_class, +extern bt_component_class_status +bt_component_class_source_set_query_method( + bt_component_class_source *comp_class, bt_component_class_source_query_method method); -extern int bt_component_class_source_set_notification_iterator_init_method( - struct bt_component_class_source *comp_class, - bt_component_class_source_notification_iterator_init_method method); - -extern int bt_component_class_source_set_notification_iterator_finalize_method( - struct bt_component_class_source *comp_class, - bt_component_class_source_notification_iterator_finalize_method method); +extern bt_component_class_status +bt_component_class_source_set_message_iterator_init_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_init_method method); + +extern bt_component_class_status +bt_component_class_source_set_message_iterator_finalize_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_finalize_method method); + +extern bt_component_class_status +bt_component_class_source_set_message_iterator_seek_ns_from_origin_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_seek_ns_from_origin_method method); + +extern bt_component_class_status +bt_component_class_source_set_message_iterator_seek_beginning_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_seek_beginning_method method); + +extern bt_bool +bt_component_class_source_set_message_iterator_can_seek_ns_from_origin_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_can_seek_ns_from_origin_method method); + +extern bt_bool +bt_component_class_source_set_message_iterator_can_seek_beginning_method( + bt_component_class_source *comp_class, + bt_component_class_source_message_iterator_can_seek_beginning_method method); #ifdef __cplusplus }