More modifications
[babeltrace.git] / include / babeltrace / plugin / plugin-internal.h
index a05053182705d082892159443b5ebe635c5a8b58..3fc85c858c90b905e5a40531960cfb4308f729b1 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef BABELTRACE_PLUGIN_INTERNAL_H
-#define BABELTRACE_PLUGIN_INTERNAL_H
+#ifndef BABELTRACE_PLUGIN_COMPONENT_INTERNAL_H
+#define BABELTRACE_PLUGIN_COMPONENT_INTERNAL_H
 
 /*
- * BabelTrace - Plug-in internal
+ * BabelTrace - Component internal
  *
  * Copyright 2015 Jérémie Galarneau <jeremie.galarneau@efficios.com>
  *
  */
 
 #include <babeltrace/babeltrace-internal.h>
+#include <babeltrace/plugin/plugin.h>
+#include <babeltrace/plugin/component.h>
+#include <babeltrace/plugin/plugin-system.h>
 #include <babeltrace/ctf-writer/ref-internal.h>
 #include <glib.h>
+#include <stdio.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -37,18 +41,27 @@ extern "C" {
 
 struct bt_notification;
 
-struct bt_plugin {
+struct bt_component {
        struct bt_ctf_ref ref_count;
        GString *name;
        enum bt_plugin_type type;
+       /** No ownership taken */
+       FILE *error_stream;
 
-       /* Plug-in implementation callbacks */
+       void *user_data;
+       bt_plugin_destroy_cb user_data_destroy;
        bt_plugin_destroy_cb destroy;
-       bt_plugin_set_error_stream_cb set_error_stream;
 };
 
+BT_HIDDEN
+enum bt_component_status bt_component_init(struct bt_component *plugin,
+               const char *name, void *user_data,
+               bt_component_destroy_cb destroy_func,
+               enum bt_component_type component_type,
+               bt_component_destroy_cb component_destroy);
+
 #ifdef __cplusplus
 }
 #endif
 
-#endif /* BABELTRACE_PLUGIN_INTERNAL_H */
+#endif /* BABELTRACE_PLUGIN_COMPONENT_INTERNAL_H */
This page took 0.023851 seconds and 4 git commands to generate.