Implement ctf.lttng-live component
[babeltrace.git] / plugins / ctf / plugin.c
index 0aac9032f7a20eb876679457b97826ac83978b2d..63f7f8b326673efb8d05238cca2afb138678240b 100644 (file)
  * SOFTWARE.
  */
 
-#include <babeltrace/plugin/plugin-macros.h>
-#include "fs/fs.h"
+#include <babeltrace/plugin/plugin-dev.h>
+#include "fs-src/fs.h"
+#include "fs-sink/writer.h"
 #include "lttng-live/lttng-live-internal.h"
 
 /* Initialize plug-in description. */
-BT_PLUGIN_NAME("ctf");
-BT_PLUGIN_DESCRIPTION("Built-in Babeltrace plug-in providing CTF read support.");
-BT_PLUGIN_AUTHOR("Jérémie Galarneau");
+BT_PLUGIN(ctf);
+BT_PLUGIN_DESCRIPTION("CTF source and sink support");
+BT_PLUGIN_AUTHOR("Julien Desfossez, Mathieu Desnoyers, Jérémie Galarneau, Philippe Proulx");
 BT_PLUGIN_LICENSE("MIT");
 
-/* Declare component classes implemented by this plug-in. */
-BT_PLUGIN_COMPONENT_CLASSES_BEGIN
-BT_PLUGIN_SOURCE_COMPONENT_CLASS_ENTRY(CTF_FS_COMPONENT_NAME,
-               CTF_FS_COMPONENT_DESCRIPTION, ctf_fs_init)
-BT_PLUGIN_SOURCE_COMPONENT_CLASS_ENTRY(LTTNG_LIVE_COMPONENT_NAME,
-               LTTNG_LIVE_COMPONENT_DESCRIPTION, lttng_live_init)
-BT_PLUGIN_COMPONENT_CLASSES_END
+/* ctf.fs soource */
+BT_PLUGIN_SOURCE_COMPONENT_CLASS(fs, ctf_fs_iterator_next);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_DESCRIPTION(fs,
+       "Read CTF traces from the file system.");
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_INIT_METHOD(fs, ctf_fs_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_QUERY_METHOD(fs, ctf_fs_query);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_FINALIZE_METHOD(fs, ctf_fs_finalize);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_INIT_METHOD(fs,
+       ctf_fs_iterator_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_FINALIZE_METHOD(fs,
+       ctf_fs_iterator_finalize);
+
+/* ctf.fs sink */
+BT_PLUGIN_SINK_COMPONENT_CLASS(fs, writer_run);
+BT_PLUGIN_SINK_COMPONENT_CLASS_INIT_METHOD(fs, writer_component_init);
+BT_PLUGIN_SINK_COMPONENT_CLASS_PORT_CONNECTED_METHOD(fs,
+               writer_component_port_connected);
+BT_PLUGIN_SINK_COMPONENT_CLASS_FINALIZE_METHOD(fs, writer_component_finalize);
+BT_PLUGIN_SINK_COMPONENT_CLASS_DESCRIPTION(fs, "Write CTF traces to the file system.");
+
+/* ctf.lttng-live source */
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_WITH_ID(auto, lttng_live, "lttng-live",
+       lttng_live_iterator_next);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_DESCRIPTION_WITH_ID(auto, lttng_live,
+        "Connect to an LTTng relay daemon and receive CTF streams.");
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_INIT_METHOD_WITH_ID(auto, lttng_live,
+       lttng_live_component_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_QUERY_METHOD_WITH_ID(auto, lttng_live,
+       lttng_live_query);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_FINALIZE_METHOD_WITH_ID(auto, lttng_live,
+       lttng_live_component_finalize);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_INIT_METHOD_WITH_ID(
+       auto, lttng_live, lttng_live_iterator_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_FINALIZE_METHOD_WITH_ID(
+       auto, lttng_live, lttng_live_iterator_finalize);
This page took 0.023955 seconds and 4 git commands to generate.