50 #ifndef COMMON_PLUGIN_H 51 #define COMMON_PLUGIN_H 73 typedef lumiera_plugin* LumieraPlugin;
191 int (*callback_register) (LumieraPlugin));
197 lumiera_plugin_cmp_fn (
const void* keya,
const void* keyb);
200 lumiera_plugin_key_fn (
const PSplaynode node);
203 lumiera_plugin_delete_fn (PSplaynode node);
unsigned lumiera_plugin_unload(LumieraPlugin self)
Tries to unload a plugin.
int lumiera_plugin_register(LumieraPlugin self)
Register a plugin and its interfaces.
void * lumiera_plugin_handle(LumieraPlugin self)
Query the plugin handle.
int lumiera_plugin_discover(LumieraPlugin(*callback_load)(const char *plugin), int(*callback_register)(LumieraPlugin))
discover new plugins traverses the configured plugin paths and calls the callback_load function for a...
void lumiera_plugin_refdec(LumieraPlugin self)
void lumiera_plugin_refinc(LumieraPlugin self)
LumieraPlugin lumiera_plugin_lookup(const char *name)
Lookup a plugin handle in the pluginregistry.
lumiera_err lumiera_plugin_error(LumieraPlugin self)
Query the error state of a plugin.
#define LUMIERA_ERROR_DECLARE(err)
Forward declare an error constant.
Lumiera error handling (C interface).
Lumiera interface macros and structures.
Probabilistic splay tree.
LumieraPlugin lumiera_plugin_new(const char *name)
Allocates an preinitialises a plugin structure.
const char * lumiera_plugin_name(LumieraPlugin self)
Query the plugin name The name is the path and filename under which it was loaded.
LumieraPlugin lumiera_plugin_load(const char *plugin)
Tries to load a plugin Creates a new plugin structure and tries to load and initialise the plugin...
LumieraPlugin lumiera_plugin_init(LumieraPlugin self, void *handle, LumieraInterface plugin)