Elektra 0.11.0
Functions
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>

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 deferrable 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.