GnuCash 2.4.99
gncmod-engine.c
00001 /*********************************************************************
00002  * gnc-mod-engine.c
00003  * module definition/initialization for the Engine module
00004  *
00005  * Copyright (c) 2001 Linux Developers Group, Inc.
00006  *********************************************************************/
00007 
00008 #include "config.h"
00009 #include <gmodule.h>
00010 #include <libguile.h>
00011 
00012 #include "gnc-engine.h"
00013 #include "gnc-module-api.h"
00014 
00015 GNC_MODULE_API_DECL(libgncmod_engine)
00016 
00017 /* version of the gnc module system interface we require */
00018 int libgncmod_engine_gnc_module_system_interface = 0;
00019 
00020 /* module versioning uses libtool semantics. */
00021 int libgncmod_engine_gnc_module_current  = 0;
00022 int libgncmod_engine_gnc_module_revision = 0;
00023 int libgncmod_engine_gnc_module_age      = 0;
00024 
00025 
00026 char *
00027 libgncmod_engine_gnc_module_path(void)
00028 {
00029     return g_strdup("gnucash/engine");
00030 }
00031 
00032 char *
00033 libgncmod_engine_gnc_module_description(void)
00034 {
00035     return g_strdup("The GnuCash accounting engine");
00036 }
00037 
00038 extern SCM scm_init_sw_engine_module(void);
00039 
00040 int
00041 libgncmod_engine_gnc_module_init(int refcount)
00042 {
00043     if (refcount == 0)
00044     {
00045         /* initialize the engine on the first load */
00046         gnc_engine_init(0, NULL);
00047     }
00048 
00049     scm_init_sw_engine_module();
00050     scm_c_eval_string("(use-modules (sw_engine))");
00051     scm_c_eval_string("(use-modules (gnucash engine))");
00052     scm_c_eval_string("(use-modules (gnucash business-core))");
00053 
00054     return TRUE;
00055 }
00056 
00057 int
00058 libgncmod_engine_gnc_module_end(int refcount)
00059 {
00060     return TRUE;
00061 }
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines