banking.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile$
00003  -------------------
00004  cvs         : $Id: banking.h 1026 2006-05-26 13:57:28Z christian $
00005  begin       : Mon Mar 01 2004
00006  copyright   : (C) 2004 by Martin Preuss
00007  email       : martin@libchipcard.de
00008 
00009  ***************************************************************************
00010  *          Please see toplevel file COPYING for license details           *
00011  ***************************************************************************/
00012 
00017 #ifndef AQBANKING_BANKING_H
00018 #define AQBANKING_BANKING_H
00019 
00026 typedef struct AB_BANKING AB_BANKING;
00030 #include <gwenhywfar/inherit.h>
00031 #include <gwenhywfar/types.h>
00032 #include <gwenhywfar/db.h>
00033 #include <gwenhywfar/stringlist.h>
00034 #include <gwenhywfar/plugindescr.h>
00035 
00036 #include <aqbanking/error.h> /* for AQBANKING_API */
00037 #include <aqbanking/version.h>
00038 
00039 /* outsourced */
00040 #include <aqbanking/banking_virt.h>
00041 #include <aqbanking/banking_imex.h>
00042 #include <aqbanking/banking_info.h>
00043 #include <aqbanking/banking_ob.h>
00044 #include <aqbanking/banking_simple.h>
00045 
00046 #include <aqbanking/provider.h>
00047 
00048 #define AB_PM_LIBNAME    "aqbanking"
00049 #define AB_PM_SYSCONFDIR "sysconfdir"
00050 #define AB_PM_DATADIR    "datadir"
00051 
00052 
00053 
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057 
00058 
00059 
00079 
00084 #define AB_BANKING_EXTENSION_NONE             0x00000000
00085 
00095 #define AB_BANKING_EXTENSION_NESTING_PROGRESS 0x00000001
00096 
00102 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_BANKING, AQBANKING_API)
00103 
00104 
00105 
00106 
00110 
00161 AQBANKING_API
00162 AB_BANKING *AB_Banking_new(const char *appName, const char *dname);
00163 
00173 AQBANKING_API
00174 AB_BANKING *AB_Banking_newExtended(const char *appName,
00175                                    const char *dname,
00176                                    GWEN_TYPE_UINT32 extensions);
00177 
00178 
00184 AQBANKING_API 
00185 void AB_Banking_free(AB_BANKING *ab);
00186 
00193 AQBANKING_API 
00194 int AB_Banking_Init(AB_BANKING *ab);
00195 
00202 AQBANKING_API 
00203 int AB_Banking_Fini(AB_BANKING *ab);
00204 
00211 int AB_Banking_Save(AB_BANKING *ab);
00212 
00256 
00260 AQBANKING_API 
00261 const GWEN_STRINGLIST *AB_Banking_GetActiveProviders(const AB_BANKING *ab);
00262 
00281 AQBANKING_API 
00282 int AB_Banking_ActivateProvider(AB_BANKING *ab, const char *backend);
00283 
00295 AQBANKING_API 
00296 int AB_Banking_DeactivateProvider(AB_BANKING *ab, const char *backend);
00297 
00298 
00305 AQBANKING_API 
00306 int AB_Banking_IsProviderActive(AB_BANKING *ab, const char *backend);
00307 
00308 
00343 AQBANKING_API
00344 int AB_Banking_FindWizard(AB_BANKING *ab,
00345                           const char *backend,
00346                           const char *frontends,
00347                           GWEN_BUFFER *pbuf);
00348 
00381 AQBANKING_API
00382 int AB_Banking_FindDebugger(AB_BANKING *ab,
00383                             const char *backend,
00384                             const char *frontends,
00385                             GWEN_BUFFER *pbuf);
00386 
00387 
00403 AQBANKING_API 
00404 const char *AB_Banking_GetAppName(const AB_BANKING *ab);
00405 
00412 AQBANKING_API 
00413 const char *AB_Banking_GetEscapedAppName(const AB_BANKING *ab);
00414 
00422 AQBANKING_API 
00423 GWEN_DB_NODE *AB_Banking_GetAppData(AB_BANKING *ab);
00424 
00434 AQBANKING_API 
00435 GWEN_DB_NODE *AB_Banking_GetSharedData(AB_BANKING *ab, const char *name);
00436 
00444 AQBANKING_API 
00445 int AB_Banking_GetUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00446 
00458 AQBANKING_API 
00459 int AB_Banking_GetAppUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00460 
00469 AQBANKING_API 
00470 int AB_Banking_GetSharedDataDir(const AB_BANKING *ab,
00471                                 const char *name,
00472                                 GWEN_BUFFER *buf);
00473 
00483 AQBANKING_API
00484 void *AB_Banking_GetUserData(AB_BANKING *ab);
00485 
00496 AQBANKING_API
00497 void AB_Banking_SetUserData(AB_BANKING *ab, void *user_data);
00498 
00518 AQBANKING_API 
00519 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetProviderDescrs(AB_BANKING *ab);
00520 
00521 
00531 AQBANKING_API 
00532 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetWizardDescrs(AB_BANKING *ab);
00533 
00534 
00549 AQBANKING_API 
00550 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetDebuggerDescrs(AB_BANKING *ab,
00551                                                             const char *pn);
00560 
00566 AQBANKING_API
00567 int AB_Banking_GetAlwaysAskForCert(const AB_BANKING *ab);
00568 
00574 AQBANKING_API 
00575 void AB_Banking_SetAlwaysAskForCert(AB_BANKING *ab, int i);
00581  /* addtogroup */
00582 
00583 
00584 #ifdef __cplusplus
00585 }
00586 #endif
00587 
00588 
00589 
00590 #endif
00591 
00592 
00593 

Generated on Fri Nov 10 03:56:53 2006 for aqbanking by  doxygen 1.5.1