Implement ctf.lttng-live component
[babeltrace.git] / plugins / ctf / plugin.c
index 16c2c5b6eaa13c08fdc5cc321b819bb880dae43b..63f7f8b326673efb8d05238cca2afb138678240b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * symbols.c
+ * plugin.c
  *
  * Babeltrace CTF Plug-in Registration Symbols
  *
  * SOFTWARE.
  */
 
-#include <babeltrace/plugin/plugin-macros.h>
-#include "fs/fs-internal.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 entry points. */
-BT_PLUGIN_NAME("ctf");
-BT_PLUGIN_DESCRIPTION("Babeltrace CTF plug-in.");
-BT_PLUGIN_AUTHOR("Jérémie Galarneau");
+/* Initialize plug-in description. */
+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");
 
-BT_PLUGIN_COMPONENT_CLASSES_BEGIN
-BT_PLUGIN_SOURCE_COMPONENT_CLASS_ENTRY(FS_COMPONENT_NAME,
-               FS_COMPONENT_DESCRIPTION, 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.024133 seconds and 4 git commands to generate.