Add bt_plugin_set object
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Wed, 26 Apr 2017 12:44:15 +0000 (08:44 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Sun, 28 May 2017 16:57:41 +0000 (12:57 -0400)
commita8ff38ef4b08728cd1bb93ae66a888dfbda4fbb2
treee1b16e121eb9323eb7aa6b1da4ba62d9285856fb
parent0982a26d7f4ad134fbef954f87d0fd5d7bb60af4
Add bt_plugin_set object

It is unusual in the Babeltrace API to return a NULL-terminated array of
objects which must be individually put by the user in addition to
calling free() on the returned array. This is what was returned by
bt_plugin_create_all_from_file(), bt_plugin_create_all_from_dir(),
and bt_plugin_create_all_from_static().

Instead, create a bt_plugin_set object of which the only purpose is to
contain plugins. A plugin set has a reference count and is not more
awkward to use than any other standard Babeltrace object.

Tests and the CLI are updated accordingly.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
cli/babeltrace.c
include/babeltrace/plugin/plugin-internal.h
include/babeltrace/plugin/plugin-so-internal.h
include/babeltrace/plugin/plugin.h
include/babeltrace/plugin/python-plugin-provider-internal.h
lib/plugin/plugin-so.c
lib/plugin/plugin.c
python-plugin-provider/python-plugin-provider.c
tests/lib/test_plugin.c
This page took 0.029015 seconds and 4 git commands to generate.