GnuCash 2.4.99
gnc-module.h
00001 /*************************************************************
00002  * gnc-module.h -- loadable plugin/module system for gnucash
00003  * Copyright 2001 Linux Developers Group, Inc.
00004  *************************************************************/
00005 
00006 #ifndef GNC_MODULE_H
00007 #define GNC_MODULE_H
00008 
00009 #include <glib.h>
00010 
00011 typedef void * GNCModule;
00012 
00013 #define DEFAULT_MODULE_PATH "/usr/local/gnucash/lib/modules"
00014 #define GNC_MODULE_PREFIX "libgncmod"
00015 
00016 /* the basics: initialize the module system, refresh its module
00017  * database, and get a list of all known modules */
00018 void            gnc_module_system_init(void);
00019 void            gnc_module_system_refresh(void);
00020 GList         * gnc_module_system_modinfo(void);
00021 
00022 /* load and unload a module.  gnc_module_system_init() must be called
00023  * before loading and unloading.
00024  */
00025 /*@ dependent @*/
00026 GNCModule       gnc_module_load(const gchar * module_name, gint iface);
00027 GNCModule       gnc_module_load_optional(const gchar * module_name, gint iface);
00028 int             gnc_module_unload(GNCModule mod);
00029 
00030 #endif
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines