X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=lib%2Fgraph%2Fcomponent-class.c;h=4cfc3dc7cc5510419f77498ba91fb24fc4d53269;hb=3fadfbc0c91f82c46bd36e6e0657ea93570c9db1;hp=165816bafe7d3ac0821b3d1ba930cf064e7be0c9;hpb=d0cf29eea302e1f262da0ed68d60bceb53380d46;p=babeltrace.git diff --git a/lib/graph/component-class.c b/lib/graph/component-class.c index 165816ba..4cfc3dc7 100644 --- a/lib/graph/component-class.c +++ b/lib/graph/component-class.c @@ -22,21 +22,21 @@ */ #define BT_LOG_TAG "COMP-CLASS" -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #define BT_ASSERT_PRE_COMP_CLS_HOT(_cc) \ @@ -245,7 +245,8 @@ end: return (void *) sink_class; } -int bt_component_class_source_set_init_method( +enum bt_component_class_status +bt_component_class_source_set_init_method( struct bt_component_class_source *comp_cls, bt_component_class_source_init_method method) { @@ -258,7 +259,8 @@ int bt_component_class_source_set_init_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_init_method( +enum bt_component_class_status +bt_component_class_filter_set_init_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_init_method method) { @@ -271,7 +273,8 @@ int bt_component_class_filter_set_init_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_init_method( +enum bt_component_class_status +bt_component_class_sink_set_init_method( struct bt_component_class_sink *comp_cls, bt_component_class_sink_init_method method) { @@ -284,7 +287,8 @@ int bt_component_class_sink_set_init_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_finalize_method( +enum bt_component_class_status +bt_component_class_source_set_finalize_method( struct bt_component_class_source *comp_cls, bt_component_class_source_finalize_method method) { @@ -297,7 +301,8 @@ int bt_component_class_source_set_finalize_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_finalize_method( +enum bt_component_class_status +bt_component_class_filter_set_finalize_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_finalize_method method) { @@ -310,7 +315,8 @@ int bt_component_class_filter_set_finalize_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_finalize_method( +enum bt_component_class_status +bt_component_class_sink_set_finalize_method( struct bt_component_class_sink *comp_cls, bt_component_class_sink_finalize_method method) { @@ -323,7 +329,8 @@ int bt_component_class_sink_set_finalize_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_query_method( +enum bt_component_class_status +bt_component_class_source_set_query_method( struct bt_component_class_source *comp_cls, bt_component_class_source_query_method method) { @@ -336,7 +343,8 @@ int bt_component_class_source_set_query_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_query_method( +enum bt_component_class_status +bt_component_class_filter_set_query_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_query_method method) { @@ -349,7 +357,8 @@ int bt_component_class_filter_set_query_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_query_method( +enum bt_component_class_status +bt_component_class_sink_set_query_method( struct bt_component_class_sink *comp_cls, bt_component_class_sink_query_method method) { @@ -362,7 +371,8 @@ int bt_component_class_sink_set_query_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_accept_input_port_connection_method( +enum bt_component_class_status +bt_component_class_filter_set_accept_input_port_connection_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_accept_input_port_connection_method method) { @@ -375,7 +385,8 @@ int bt_component_class_filter_set_accept_input_port_connection_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_accept_input_port_connection_method( +enum bt_component_class_status +bt_component_class_sink_set_accept_input_port_connection_method( struct bt_component_class_sink *comp_cls, bt_component_class_sink_accept_input_port_connection_method method) { @@ -388,7 +399,8 @@ int bt_component_class_sink_set_accept_input_port_connection_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_accept_output_port_connection_method( +enum bt_component_class_status +bt_component_class_source_set_accept_output_port_connection_method( struct bt_component_class_source *comp_cls, bt_component_class_source_accept_output_port_connection_method method) { @@ -401,7 +413,8 @@ int bt_component_class_source_set_accept_output_port_connection_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_accept_output_port_connection_method( +enum bt_component_class_status +bt_component_class_filter_set_accept_output_port_connection_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_accept_output_port_connection_method method) { @@ -414,7 +427,8 @@ int bt_component_class_filter_set_accept_output_port_connection_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_input_port_connected_method( +enum bt_component_class_status +bt_component_class_filter_set_input_port_connected_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_input_port_connected_method method) { @@ -427,7 +441,8 @@ int bt_component_class_filter_set_input_port_connected_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_input_port_connected_method( +enum bt_component_class_status +bt_component_class_sink_set_input_port_connected_method( struct bt_component_class_sink *comp_cls, bt_component_class_sink_input_port_connected_method method) { @@ -440,7 +455,8 @@ int bt_component_class_sink_set_input_port_connected_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_output_port_connected_method( +enum bt_component_class_status +bt_component_class_source_set_output_port_connected_method( struct bt_component_class_source *comp_cls, bt_component_class_source_output_port_connected_method method) { @@ -453,7 +469,8 @@ int bt_component_class_source_set_output_port_connected_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_output_port_connected_method( +enum bt_component_class_status +bt_component_class_filter_set_output_port_connected_method( struct bt_component_class_filter *comp_cls, bt_component_class_filter_output_port_connected_method method) { @@ -466,106 +483,183 @@ int bt_component_class_filter_set_output_port_connected_method( return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_input_port_disconnected_method( +enum bt_component_class_status +bt_component_class_sink_set_graph_is_configured_method( + struct bt_component_class_sink *comp_cls, + bt_component_class_sink_graph_is_configured_method method) +{ + BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); + BT_ASSERT_PRE_NON_NULL(method, "Method"); + BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); + comp_cls->methods.graph_is_configured = method; + BT_LIB_LOGV("Set sink component class's \"graph is configured\" method" + ": %!+C", comp_cls); + return BT_COMPONENT_CLASS_STATUS_OK; +} + +int bt_component_class_source_set_message_iterator_init_method( + struct bt_component_class_source *comp_cls, + bt_component_class_source_message_iterator_init_method method) +{ + BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); + BT_ASSERT_PRE_NON_NULL(method, "Method"); + BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); + comp_cls->methods.msg_iter_init = method; + BT_LIB_LOGV("Set source component class's message iterator initialization method" + ": %!+C", comp_cls); + return BT_COMPONENT_CLASS_STATUS_OK; +} + +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_init_method( struct bt_component_class_filter *comp_cls, - bt_component_class_filter_input_port_disconnected_method method) + bt_component_class_filter_message_iterator_init_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.input_port_disconnected = method; - BT_LIB_LOGV("Set filter component class's \"input port disconnected\" method" + comp_cls->methods.msg_iter_init = method; + BT_LIB_LOGV("Set filter component class's message iterator initialization method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_sink_set_input_port_disconnected_method( - struct bt_component_class_sink *comp_cls, - bt_component_class_sink_input_port_disconnected_method method) +enum bt_component_class_status +bt_component_class_source_set_message_iterator_finalize_method( + struct bt_component_class_source *comp_cls, + bt_component_class_source_message_iterator_finalize_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.input_port_disconnected = method; - BT_LIB_LOGV("Set sink component class's \"input port disconnected\" method" + comp_cls->methods.msg_iter_finalize = method; + BT_LIB_LOGV("Set source component class's message iterator finalization method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_output_port_disconnected_method( +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_finalize_method( + struct bt_component_class_filter *comp_cls, + bt_component_class_filter_message_iterator_finalize_method method) +{ + BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); + BT_ASSERT_PRE_NON_NULL(method, "Method"); + BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); + comp_cls->methods.msg_iter_finalize = method; + BT_LIB_LOGV("Set filter component class's message iterator finalization method" + ": %!+C", comp_cls); + return BT_COMPONENT_CLASS_STATUS_OK; +} + +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_seek_ns_from_origin_method( + struct bt_component_class_filter *comp_cls, + bt_component_class_filter_message_iterator_seek_ns_from_origin_method method) +{ + BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); + BT_ASSERT_PRE_NON_NULL(method, "Method"); + BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); + comp_cls->methods.msg_iter_seek_ns_from_origin = method; + BT_LIB_LOGV("Set filter component class's message iterator \"seek nanoseconds from origin\" method" + ": %!+C", comp_cls); + return BT_COMPONENT_CLASS_STATUS_OK; +} + +enum bt_component_class_status +bt_component_class_source_set_message_iterator_seek_ns_from_origin_method( struct bt_component_class_source *comp_cls, - bt_component_class_source_output_port_disconnected_method method) + bt_component_class_source_message_iterator_seek_ns_from_origin_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.output_port_disconnected = method; - BT_LIB_LOGV("Set source component class's \"output port disconnected\" method" + comp_cls->methods.msg_iter_seek_ns_from_origin = method; + BT_LIB_LOGV("Set source component class's message iterator \"seek nanoseconds from origin\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_output_port_disconnected_method( +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_seek_beginning_method( struct bt_component_class_filter *comp_cls, - bt_component_class_filter_output_port_disconnected_method method) + bt_component_class_filter_message_iterator_seek_beginning_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.output_port_disconnected = method; - BT_LIB_LOGV("Set filter component class's \"output port disconnected\" method" + comp_cls->methods.msg_iter_seek_beginning = method; + BT_LIB_LOGV("Set filter component class's message iterator \"seek beginning\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_message_iterator_init_method( +enum bt_component_class_status +bt_component_class_source_set_message_iterator_seek_beginning_method( struct bt_component_class_source *comp_cls, - bt_component_class_source_message_iterator_init_method method) + bt_component_class_source_message_iterator_seek_beginning_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.msg_iter_init = method; - BT_LIB_LOGV("Set source component class's message iterator initialization method" + comp_cls->methods.msg_iter_seek_beginning = method; + BT_LIB_LOGV("Set source component class's message iterator \"seek beginning\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_message_iterator_init_method( +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_can_seek_beginning_method( struct bt_component_class_filter *comp_cls, - bt_component_class_filter_message_iterator_init_method method) + bt_component_class_filter_message_iterator_can_seek_beginning_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.msg_iter_init = method; - BT_LIB_LOGV("Set filter component class's message iterator initialization method" + comp_cls->methods.msg_iter_can_seek_beginning = method; + BT_LIB_LOGV("Set filter component class's message iterator \"can seek beginning\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_source_set_message_iterator_finalize_method( +enum bt_component_class_status +bt_component_class_source_set_message_iterator_can_seek_beginning_method( struct bt_component_class_source *comp_cls, - bt_component_class_source_message_iterator_finalize_method method) + bt_component_class_source_message_iterator_can_seek_beginning_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.msg_iter_finalize = method; - BT_LIB_LOGV("Set source component class's message iterator finalization method" + comp_cls->methods.msg_iter_can_seek_beginning = method; + BT_LIB_LOGV("Set source component class's message iterator \"can seek beginning\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; } -int bt_component_class_filter_set_message_iterator_finalize_method( +enum bt_component_class_status +bt_component_class_filter_set_message_iterator_can_seek_ns_from_origin_method( struct bt_component_class_filter *comp_cls, - bt_component_class_filter_message_iterator_finalize_method method) + bt_component_class_filter_message_iterator_can_seek_ns_from_origin_method method) { BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); BT_ASSERT_PRE_NON_NULL(method, "Method"); BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); - comp_cls->methods.msg_iter_finalize = method; - BT_LIB_LOGV("Set filter component class's message iterator finalization method" + comp_cls->methods.msg_iter_can_seek_ns_from_origin = method; + BT_LIB_LOGV("Set filter component class's message iterator \"can seek nanoseconds from origin\" method" + ": %!+C", comp_cls); + return BT_COMPONENT_CLASS_STATUS_OK; +} + +enum bt_component_class_status +bt_component_class_source_set_message_iterator_can_seek_ns_from_origin_method( + struct bt_component_class_source *comp_cls, + bt_component_class_source_message_iterator_can_seek_ns_from_origin_method method) +{ + BT_ASSERT_PRE_NON_NULL(comp_cls, "Component class"); + BT_ASSERT_PRE_NON_NULL(method, "Method"); + BT_ASSERT_PRE_COMP_CLS_HOT(comp_cls); + comp_cls->methods.msg_iter_can_seek_ns_from_origin = method; + BT_LIB_LOGV("Set source component class's message iterator \"can seek nanoseconds from origin\" method" ": %!+C", comp_cls); return BT_COMPONENT_CLASS_STATUS_OK; }