Main Page | Modules | Data Structures | Directories | File List | Data Fields | Globals

plugin.h File Reference

#include <gwenhywfar/inherit.h>
#include <gwenhywfar/libloader.h>
#include <gwenhywfar/plugindescr.h>

Go to the source code of this file.

Typedefs

typedef GWEN_PLUGIN GWEN_PLUGIN
typedef GWEN_PLUGIN *(* GWEN_PLUGIN_FACTORYFN )(GWEN_PLUGIN_MANAGER *pm, const char *name, const char *fileName)
typedef GWEN_PLUGIN_MANAGER GWEN_PLUGIN_MANAGER

Functions

GWENHYWFAR_API void GWEN_Plugin_free (GWEN_PLUGIN *p)
GWENHYWFAR_API const char * GWEN_Plugin_GetFileName (const GWEN_PLUGIN *p)
GWENHYWFAR_API GWEN_LIBLOADERGWEN_Plugin_GetLibLoader (const GWEN_PLUGIN *p)
GWENHYWFAR_API GWEN_PLUGIN_MANAGERGWEN_Plugin_GetManager (const GWEN_PLUGIN *p)
GWENHYWFAR_API const char * GWEN_Plugin_GetName (const GWEN_PLUGIN *p)
GWENHYWFAR_API GWEN_PLUGINGWEN_Plugin_new (GWEN_PLUGIN_MANAGER *pm, const char *name, const char *fileName)
GWENHYWFAR_API int GWEN_PluginManager_AddPath (GWEN_PLUGIN_MANAGER *pm, const char *s)
GWENHYWFAR_API int GWEN_PluginManager_AddPathFromWinReg (GWEN_PLUGIN_MANAGER *pm, const char *keypath, const char *varname)
GWENHYWFAR_API GWEN_PLUGIN_MANAGERGWEN_PluginManager_FindPluginManager (const char *s)
GWENHYWFAR_API void GWEN_PluginManager_free (GWEN_PLUGIN_MANAGER *pm)
GWENHYWFAR_API const char * GWEN_PluginManager_GetName (const GWEN_PLUGIN_MANAGER *pm)
GWENHYWFAR_API const GWEN_STRINGLISTGWEN_PluginManager_GetPaths (const GWEN_PLUGIN_MANAGER *pm)
GWENHYWFAR_API GWEN_PLUGINGWEN_PluginManager_GetPlugin (GWEN_PLUGIN_MANAGER *pm, const char *s)
GWENHYWFAR_API GWEN_PLUGIN_DESCRIPTION_LIST2GWEN_PluginManager_GetPluginDescrs (GWEN_PLUGIN_MANAGER *pm)
GWENHYWFAR_API GWEN_PLUGINGWEN_PluginManager_LoadPlugin (GWEN_PLUGIN_MANAGER *pm, const char *modName)
GWENHYWFAR_API GWEN_PLUGINGWEN_PluginManager_LoadPluginFile (GWEN_PLUGIN_MANAGER *pm, const char *modName, const char *fname)
GWENHYWFAR_API GWEN_PLUGIN_MANAGERGWEN_PluginManager_new (const char *name)
GWENHYWFAR_API int GWEN_PluginManager_Register (GWEN_PLUGIN_MANAGER *pm)
GWENHYWFAR_API int GWEN_PluginManager_Unregister (GWEN_PLUGIN_MANAGER *pm)


Typedef Documentation

typedef struct GWEN_PLUGIN GWEN_PLUGIN
 

typedef GWEN_PLUGIN*(* GWEN_PLUGIN_FACTORYFN)(GWEN_PLUGIN_MANAGER *pm, const char *name, const char *fileName)
 

typedef struct GWEN_PLUGIN_MANAGER GWEN_PLUGIN_MANAGER
 


Function Documentation

GWENHYWFAR_API void GWEN_Plugin_free GWEN_PLUGIN p  ) 
 

GWENHYWFAR_API const char* GWEN_Plugin_GetFileName const GWEN_PLUGIN p  ) 
 

GWENHYWFAR_API GWEN_LIBLOADER* GWEN_Plugin_GetLibLoader const GWEN_PLUGIN p  ) 
 

GWENHYWFAR_API GWEN_PLUGIN_MANAGER* GWEN_Plugin_GetManager const GWEN_PLUGIN p  ) 
 

GWENHYWFAR_API const char* GWEN_Plugin_GetName const GWEN_PLUGIN p  ) 
 

GWENHYWFAR_API GWEN_PLUGIN* GWEN_Plugin_new GWEN_PLUGIN_MANAGER pm,
const char *  name,
const char *  fileName
 

GWENHYWFAR_API int GWEN_PluginManager_AddPath GWEN_PLUGIN_MANAGER pm,
const char *  s
 

Add a directory path to lookup plugins from.

GWENHYWFAR_API int GWEN_PluginManager_AddPathFromWinReg GWEN_PLUGIN_MANAGER pm,
const char *  keypath,
const char *  varname
 

Add a directory path from the windows registry HKEY_CURRENT_USER, to lookup plugins from. On Non-Windows systems, this function does nothing and returns zero.

FIXME: Maybe it should be possible whether to lookup in HKEY_CURRENT_USER vs. HKEY_LOCAL_MACHINE?

Returns:
Zero on success, and non-zero on error.
Parameters:
pm The PluginManager
keypath The path to the registry key, e.g. "Software\\MySoftware\\Whatever"
varname The key name (variable name?) inside the given registry key, e.g. "myvariable".

GWENHYWFAR_API GWEN_PLUGIN_MANAGER* GWEN_PluginManager_FindPluginManager const char *  s  ) 
 

GWENHYWFAR_API void GWEN_PluginManager_free GWEN_PLUGIN_MANAGER pm  ) 
 

GWENHYWFAR_API const char* GWEN_PluginManager_GetName const GWEN_PLUGIN_MANAGER pm  ) 
 

GWENHYWFAR_API const GWEN_STRINGLIST* GWEN_PluginManager_GetPaths const GWEN_PLUGIN_MANAGER pm  ) 
 

Returns the list of all search paths of the given PluginManager.

GWENHYWFAR_API GWEN_PLUGIN* GWEN_PluginManager_GetPlugin GWEN_PLUGIN_MANAGER pm,
const char *  s
 

GWENHYWFAR_API GWEN_PLUGIN_DESCRIPTION_LIST2* GWEN_PluginManager_GetPluginDescrs GWEN_PLUGIN_MANAGER pm  ) 
 

GWENHYWFAR_API GWEN_PLUGIN* GWEN_PluginManager_LoadPlugin GWEN_PLUGIN_MANAGER pm,
const char *  modName
 

GWENHYWFAR_API GWEN_PLUGIN* GWEN_PluginManager_LoadPluginFile GWEN_PLUGIN_MANAGER pm,
const char *  modName,
const char *  fname
 

GWENHYWFAR_API GWEN_PLUGIN_MANAGER* GWEN_PluginManager_new const char *  name  ) 
 

GWENHYWFAR_API int GWEN_PluginManager_Register GWEN_PLUGIN_MANAGER pm  ) 
 

GWENHYWFAR_API int GWEN_PluginManager_Unregister GWEN_PLUGIN_MANAGER pm  ) 
 


Generated on Tue Oct 18 05:25:19 2005 for gwenhywfar by  doxygen 1.4.1