lib: rename include dir to babeltrace2
[babeltrace.git] / lib / plugin / plugin-so.c
index ed8d5e297712395174cec3075bfe82c254188c50..ec69646f99fd38f3bb4c4bc20472698aa0aebe18 100644 (file)
  */
 
 #define BT_LOG_TAG "PLUGIN-SO"
-#include <babeltrace/lib-logging-internal.h>
-
-#include <babeltrace/assert-internal.h>
-#include <babeltrace/assert-pre-internal.h>
-#include <babeltrace/compiler-internal.h>
-#include <babeltrace/plugin/plugin-internal.h>
-#include <babeltrace/plugin/plugin-so-internal.h>
-#include <babeltrace/plugin/plugin-dev.h>
-#include <babeltrace/plugin/plugin-internal.h>
-#include <babeltrace/graph/component-class-internal.h>
-#include <babeltrace/graph/component-class.h>
-#include <babeltrace/graph/component-class-source.h>
-#include <babeltrace/graph/component-class-filter.h>
-#include <babeltrace/graph/component-class-sink.h>
-#include <babeltrace/types.h>
-#include <babeltrace/list-internal.h>
+#include <babeltrace2/lib-logging-internal.h>
+
+#include <babeltrace2/assert-internal.h>
+#include <babeltrace2/assert-pre-internal.h>
+#include <babeltrace2/compiler-internal.h>
+#include <babeltrace2/plugin/plugin-internal.h>
+#include <babeltrace2/plugin/plugin-so-internal.h>
+#include <babeltrace2/plugin/plugin-dev.h>
+#include <babeltrace2/plugin/plugin-internal.h>
+#include <babeltrace2/graph/component-class-internal.h>
+#include <babeltrace2/graph/component-class.h>
+#include <babeltrace2/graph/component-class-source.h>
+#include <babeltrace2/graph/component-class-filter.h>
+#include <babeltrace2/graph/component-class-sink.h>
+#include <babeltrace2/types.h>
+#include <babeltrace2/list-internal.h>
 #include <string.h>
 #include <stdlib.h>
 #include <glib.h>
@@ -327,6 +327,7 @@ enum bt_plugin_status bt_plugin_so_init(
                                bt_component_class_sink_query_method query;
                                bt_component_class_sink_accept_input_port_connection_method accept_input_port_connection;
                                bt_component_class_sink_input_port_connected_method input_port_connected;
+                               bt_component_class_sink_graph_is_configured_method graph_is_configured;
                        } sink;
                } methods;
        };
@@ -596,6 +597,16 @@ enum bt_plugin_status bt_plugin_so_init(
                                        abort();
                                }
                                break;
+                       case BT_PLUGIN_COMPONENT_CLASS_DESCRIPTOR_ATTRIBUTE_TYPE_GRAPH_IS_CONFIGURED_METHOD:
+                               switch (cc_type) {
+                               case BT_COMPONENT_CLASS_TYPE_SINK:
+                                       cc_full_descr->methods.sink.graph_is_configured =
+                                               cur_cc_descr_attr->value.sink_graph_is_configured_method;
+                                       break;
+                               default:
+                                       abort();
+                               }
+                               break;
                        case BT_PLUGIN_COMPONENT_CLASS_DESCRIPTOR_ATTRIBUTE_TYPE_MSG_ITER_INIT_METHOD:
                                switch (cc_type) {
                                case BT_COMPONENT_CLASS_TYPE_SOURCE:
@@ -1173,6 +1184,18 @@ enum bt_plugin_status bt_plugin_so_init(
                                }
                        }
 
+                       if (cc_full_descr->methods.sink.graph_is_configured) {
+                               ret = bt_component_class_sink_set_graph_is_configured_method(
+                                       sink_comp_class,
+                                       cc_full_descr->methods.sink.graph_is_configured);
+                               if (ret) {
+                                       BT_LOGE_STR("Cannot set sink component class's \"graph is configured\" method.");
+                                       status = BT_PLUGIN_STATUS_ERROR;
+                                       BT_OBJECT_PUT_REF_AND_RESET(sink_comp_class);
+                                       goto end;
+                               }
+                       }
+
                        break;
                default:
                        abort();
@@ -1579,7 +1602,6 @@ void plugin_comp_class_destroy_listener(struct bt_component_class *comp_class,
                "comp-cls-addr=%p", comp_class);
 }
 
-BT_HIDDEN
 void bt_plugin_so_on_add_component_class(struct bt_plugin *plugin,
                struct bt_component_class *comp_class)
 {
This page took 0.025312 seconds and 4 git commands to generate.