32#define MODMGR_GETFUNCTION(m,f) *(void**)(&f)=modmgr_getsymbol(m,#f);
33#define MODMGR_LOAD(module,api,filename) \
34 module=modmgr_load(filename); \
35 api=modmgr_getsymbol(module,"module_api");
int modmgr_setpath(const char *path)
Initialize or reset module search path.
struct modules_s * modmgr_module_t
Pointer type on private structure.
void * modmgr_getsymbol(const modmgr_module_t module, const char *szSymbol)
Resolve a module symbol, can be a function or a variable.
int modmgr_insertpath(const char *before, const char *path)
Insert an higher priority search path before another one.
void modmgr_list()
Print the currently loaded modules list for debug and tracing.
modmgr_module_t modmgr_load(const char *modfile)
Load a module and call the initialization with a parameter if first usage.
int modmgr_addpath(const char *path)
Add a path to the end of the module search path.
void modmgr_unload(modmgr_module_t module)
Call the unload function if last usage and tries to unload the module.
const char * modmgr_getpath()
Get the current search path list.
Internal ABI shared by all modules with modmgr.
Module list item structure.