| Elektra
    0.8.15
    | 
Interna of plugin functionality. More...

| Functions | |
| int | elektraProcessPlugin (Key *cur, int *pluginNumber, char **pluginName, char **referenceName, Key *errorKey) | 
| int | elektraProcessPlugins (Plugin **plugins, KeySet *modules, KeySet *referencePlugins, KeySet *config, KeySet *systemConfig, Key *errorKey) | 
| Load a plugin.  More... | |
| Plugin * | elektraPluginOpen (const char *name, KeySet *modules, KeySet *config, Key *errorKey) | 
| Opens a plugin.  More... | |
Interna of plugin functionality.
| Plugin* elektraPluginOpen | ( | const char * | name, | 
| KeySet * | modules, | ||
| KeySet * | config, | ||
| Key * | errorKey | ||
| ) | 
Opens a plugin.
The config will be used as is. So be sure to transfer ownership of the config to it, with e.g. ksDup(). elektraPluginClose() will delete the config.
| int elektraProcessPlugin | ( | Key * | cur, | 
| int * | pluginNumber, | ||
| char ** | pluginName, | ||
| char ** | referenceName, | ||
| Key * | errorKey | ||
| ) | 
| 1 | and an allocated string of the pluginName if a new plugins should be created. | 
| 2 | and an allocated string of the referenceName if an old plugin should be used | 
| 3 | and both if a new plugin should be created and made available for later back referencing. | 
| -1 | on error | 
| int elektraProcessPlugins | ( | Plugin ** | plugins, | 
| KeySet * | modules, | ||
| KeySet * | referencePlugins, | ||
| KeySet * | config, | ||
| KeySet * | systemConfig, | ||
| Key * | errorKey | ||
| ) | 
Load a plugin.
The array of plugins must be set to 0. Its length is NR_OF_PLUGINS.
systemConfig will only be used, not deleted.
| config | the config with the information how the plugins should be put together | 
| systemConfig | the shared (system) config for the plugins. Every plugin additional get this config. | 
| -1 | on failure | 
 1.8.8
 1.8.8