X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=include%2Fbabeltrace%2Fplugin%2Fplugin.h;h=945deb940a956fe580e66336b4658e506a0796e7;hb=732995546409a6d6c279acbcd44d3dbc4a1a3195;hp=a8e18499f87c88a4a3663f6ae08fe12871bc2307;hpb=f3e4505ba1b7bacce5fc1cc942f4cfaa905b4e74;p=babeltrace.git diff --git a/include/babeltrace/plugin/plugin.h b/include/babeltrace/plugin/plugin.h index a8e18499..945deb94 100644 --- a/include/babeltrace/plugin/plugin.h +++ b/include/babeltrace/plugin/plugin.h @@ -29,15 +29,21 @@ */ #include +#include +typedef enum bt_component_status (*bt_plugin_init_func)( + struct bt_component_factory *factory); +typedef void (*bt_plugin_exit_func)(void); + +/* A plugin must define the __bt_plugin_init symbol */ #define BT_PLUGIN_NAME(_x) const char *__bt_plugin_name = (_x) #define BT_PLUGIN_AUTHOR(_x) const char *__bt_plugin_author = (_x) #define BT_PLUGIN_LICENSE(_x) const char *__bt_plugin_license = (_x) -#define BT_PLUGIN_INIT(_x) void *__bt_plugin_init = (_x) -#define BT_PLUGIN_EXIT(_x) void *__bt_plugin_exit = (_x) +#define BT_PLUGIN_INIT(_x) bt_plugin_init __bt_plugin_init = (_x) +#define BT_PLUGIN_EXIT(_x) bt_plugin_exit __bt_plugin_exit = (_x) #define BT_PLUGIN_COMPONENT_CLASSES_BEGIN \ - enum bt_status __bt_plugin_register_component_classes(\ + enum bt_component_status __bt_plugin_register_component_classes(\ struct bt_component_factory *factory)\ { @@ -51,7 +57,7 @@ #define BT_PLUGIN_COMPONENT_CLASSES_END\ \ - return BT_STATUS_OK;\ + return BT_COMPONENT_STATUS_OK;\ }\ \ BT_PLUGIN_INIT(__bt_plugin_register_component_classes);\