/*
- * 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/fs.h"
#include "lttng-live/lttng-live-internal.h"
-/* Initialize plug-in entry points. */
-BT_PLUGIN_NAME("ctf");
-BT_PLUGIN_DESCRIPTION("Babeltrace CTF plug-in.");
+/* Initialize plug-in description. */
+BT_PLUGIN(ctf);
+BT_PLUGIN_DESCRIPTION("Built-in Babeltrace plug-in providing CTF read support.");
BT_PLUGIN_AUTHOR("Jérémie Galarneau");
BT_PLUGIN_LICENSE("MIT");
-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
+/* Declare component classes implemented by this plug-in. */
+BT_PLUGIN_SOURCE_COMPONENT_CLASS(fs, ctf_fs_iterator_get, ctf_fs_iterator_next);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_DESCRIPTION(fs, CTF_FS_COMPONENT_DESCRIPTION);
+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_DESTROY_METHOD(fs, ctf_fs_destroy);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_INIT_METHOD(fs,
+ ctf_fs_iterator_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_NOTIFICATION_ITERATOR_DESTROY_METHOD(fs,
+ ctf_fs_iterator_destroy);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_WITH_ID(auto, lttng_live, "lttng-live",
+ lttng_live_iterator_get, lttng_live_iterator_next);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_INIT_METHOD_WITH_ID(auto, lttng_live,
+ lttng_live_init);
+BT_PLUGIN_SOURCE_COMPONENT_CLASS_DESCRIPTION_WITH_ID(auto, lttng_live,
+ LTTNG_LIVE_COMPONENT_DESCRIPTION);