Elektra 0.8.26
invoke.c File Reference

Library for invoking exported plugin functions. More...

#include <kdbassert.h>
#include <kdbinvoke.h>
#include <kdbmodule.h>
#include <kdbprivate.h>
#include <stdio.h>
Include dependency graph for invoke.c:

Functions

ElektraInvokeHandle * elektraInvokeInitialize (const char *elektraPluginName)
ElektraInvokeHandle * elektraInvokeOpen (const char *elektraPluginName, KeySet *config, Key *errorKey)
 Opens a new handle to invoke functions for a plugin.
const void * elektraInvokeGetFunction (ElektraInvokeHandle *handle, const char *elektraPluginFunctionName)
 Get a function pointer.
KeySet * elektraInvokeGetPluginConfig (ElektraInvokeHandle *handle)
 Get the configuration the plugin uses.
const char * elektraInvokeGetPluginName (ElektraInvokeHandle *handle)
 Get the name of the plugin.
void * elektraInvokeGetPluginData (ElektraInvokeHandle *handle)
 Get the data of the plugin.
KeySet * elektraInvokeGetModules (ElektraInvokeHandle *handle)
 Get the modules used for invoking.
KeySet * elektraInvokeGetExports (ElektraInvokeHandle *handle)
 Get the exports from the plugin.
int elektraInvoke2Args (ElektraInvokeHandle *handle, const char *elektraPluginFunctionName, KeySet *ks, Key *k)
 A convenience function to call a function with two arguments.
void elektraInvokeClose (ElektraInvokeHandle *handle, Key *errorKey)
 Closes all affairs with the handle.
int elektraInvokeCallDeferable (ElektraInvokeHandle *handle, const char *elektraPluginFunctionName, KeySet *parameters)
 Invokes a deferable function on an invoke handle.
void elektraInvokeExecuteDeferredCalls (ElektraInvokeHandle *handle, ElektraDeferredCallList *list)
 Execute deferred calls from list on given invoke handle.
int elektraDeferredCall (Plugin *handle, const char *elektraPluginFunctionName, KeySet *parameters)
 Call a deferable function on a plugin handle.
int elektraDeferredCallAdd (ElektraDeferredCallList *list, const char *name, KeySet *parameters)
 Add a new deferred call to the deferred call list.
ElektraDeferredCallList * elektraDeferredCallCreateList (void)
 Create new deferred call list.
void elektraDeferredCallDeleteList (ElektraDeferredCallList *list)
 Delete deferred call list.
void elektraDeferredCallsExecute (Plugin *plugin, ElektraDeferredCallList *list)
 Execute deferred calls on given plugin.

Detailed Description

Library for invoking exported plugin functions.