X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=src%2Fbindings%2Fpython%2Fbt2%2Fbt2%2Fnative_bt_plugin.i;h=e96ea6ed77a23e19deb12426a063469b870ec648;hb=14503fb185df8483538bb2274bccc9c3a19f0d6f;hp=a0c2b3f1040b3d78d870bef0ca66b83e092f435c;hpb=577fa92f184fd2d75fb0697e879ab563de117c2e;p=babeltrace.git diff --git a/src/bindings/python/bt2/bt2/native_bt_plugin.i b/src/bindings/python/bt2/bt2/native_bt_plugin.i index a0c2b3f1..e96ea6ed 100644 --- a/src/bindings/python/bt2/bt2/native_bt_plugin.i +++ b/src/bindings/python/bt2/bt2/native_bt_plugin.i @@ -69,6 +69,10 @@ /* Helpers */ +%{ +#include "native_bt_plugin.i.h" +%} + bt_property_availability bt_bt2_plugin_get_version( const bt_plugin *plugin, unsigned int *major, unsigned int *minor, unsigned int *patch, const char **extra); @@ -90,92 +94,3 @@ bt_plugin_find_all_from_file_status bt_bt2_plugin_find_all_from_file( bt_plugin_find_all_from_dir_status bt_bt2_plugin_find_all_from_dir( const char *path, bt_bool recurse, bt_bool fail_on_load_error, const bt_plugin_set **plugin_set); - -%{ -/* - * Those bt_bt2_*() functions below ensure that when the API function - * fails, the output parameter is set to `NULL`. This is necessary - * because the epilogue of the `something **OUT` typemap will use that - * value to make a Python object. We can't rely on the initial value of - * `*OUT`; it could point to unreadable memory. - */ - -bt_property_availability bt_bt2_plugin_get_version( - const bt_plugin *plugin, unsigned int *major, - unsigned int *minor, unsigned int *patch, const char **extra) -{ - bt_property_availability ret; - - ret = bt_plugin_get_version(plugin, major, minor, patch, extra); - - if (ret == BT_PROPERTY_AVAILABILITY_NOT_AVAILABLE) { - *extra = NULL; - } - - return ret; -} - -bt_plugin_find_status bt_bt2_plugin_find(const char *plugin_name, - bt_bool find_in_std_env_var, bt_bool find_in_user_dir, - bt_bool find_in_sys_dir, bt_bool find_in_static, - bt_bool fail_on_load_error, const bt_plugin **plugin) -{ - bt_plugin_find_status status; - - status = bt_plugin_find(plugin_name, find_in_std_env_var, - find_in_user_dir, find_in_sys_dir, find_in_static, - fail_on_load_error, plugin); - if (status != __BT_FUNC_STATUS_OK) { - *plugin = NULL; - } - - return status; -} - -bt_plugin_find_all_status bt_bt2_plugin_find_all(bt_bool find_in_std_env_var, - bt_bool find_in_user_dir, bt_bool find_in_sys_dir, - bt_bool find_in_static, bt_bool fail_on_load_error, - const bt_plugin_set **plugin_set) -{ - bt_plugin_find_all_status status; - - status = bt_plugin_find_all(find_in_std_env_var, - find_in_user_dir, find_in_sys_dir, find_in_static, - fail_on_load_error, plugin_set); - if (status != __BT_FUNC_STATUS_OK) { - *plugin_set = NULL; - } - - return status; -} - -bt_plugin_find_all_from_file_status bt_bt2_plugin_find_all_from_file( - const char *path, bt_bool fail_on_load_error, - const bt_plugin_set **plugin_set) -{ - bt_plugin_find_all_from_file_status status; - - status = bt_plugin_find_all_from_file(path, fail_on_load_error, - plugin_set); - if (status != __BT_FUNC_STATUS_OK) { - *plugin_set = NULL; - } - - return status; -} - -bt_plugin_find_all_from_dir_status bt_bt2_plugin_find_all_from_dir( - const char *path, bt_bool recurse, bt_bool fail_on_load_error, - const bt_plugin_set **plugin_set) -{ - bt_plugin_find_all_from_dir_status status; - - status = bt_plugin_find_all_from_dir(path, recurse, fail_on_load_error, - plugin_set); - if (status != __BT_FUNC_STATUS_OK) { - *plugin_set = NULL; - } - - return status; -} -%}