banking.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile: banking.h,v $
00003  -------------------
00004  cvs         : $Id: banking.h,v 1.75 2006/03/25 18:18:18 aquamaniac Exp $
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 
00337 AQBANKING_API
00338 int AB_Banking_FindWizard(AB_BANKING *ab,
00339                           const char *backend,
00340                           const char *frontends,
00341                           GWEN_BUFFER *pbuf);
00342 
00375 AQBANKING_API
00376 int AB_Banking_FindDebugger(AB_BANKING *ab,
00377                             const char *backend,
00378                             const char *frontends,
00379                             GWEN_BUFFER *pbuf);
00380 
00381 
00397 AQBANKING_API 
00398 const char *AB_Banking_GetAppName(const AB_BANKING *ab);
00399 
00406 AQBANKING_API 
00407 const char *AB_Banking_GetEscapedAppName(const AB_BANKING *ab);
00408 
00416 AQBANKING_API 
00417 GWEN_DB_NODE *AB_Banking_GetAppData(AB_BANKING *ab);
00418 
00428 AQBANKING_API 
00429 GWEN_DB_NODE *AB_Banking_GetSharedData(AB_BANKING *ab, const char *name);
00430 
00438 AQBANKING_API 
00439 int AB_Banking_GetUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00440 
00452 AQBANKING_API 
00453 int AB_Banking_GetAppUserDataDir(const AB_BANKING *ab, GWEN_BUFFER *buf);
00454 
00463 AQBANKING_API 
00464 int AB_Banking_GetSharedDataDir(const AB_BANKING *ab,
00465                                 const char *name,
00466                                 GWEN_BUFFER *buf);
00467 
00477 AQBANKING_API
00478 void *AB_Banking_GetUserData(AB_BANKING *ab);
00479 
00490 AQBANKING_API
00491 void AB_Banking_SetUserData(AB_BANKING *ab, void *user_data);
00492 
00512 AQBANKING_API 
00513 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetProviderDescrs(AB_BANKING *ab);
00514 
00515 
00525 AQBANKING_API 
00526 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetWizardDescrs(AB_BANKING *ab);
00527 
00528 
00543 AQBANKING_API 
00544 GWEN_PLUGIN_DESCRIPTION_LIST2 *AB_Banking_GetDebuggerDescrs(AB_BANKING *ab,
00545                                                             const char *pn);
00554 
00560 AQBANKING_API
00561 int AB_Banking_GetAlwaysAskForCert(const AB_BANKING *ab);
00562 
00568 AQBANKING_API 
00569 void AB_Banking_SetAlwaysAskForCert(AB_BANKING *ab, int i);
00575  /* addtogroup */
00576 
00577 
00578 #ifdef __cplusplus
00579 }
00580 #endif
00581 
00582 
00583 
00584 #endif
00585 
00586 
00587 

Generated on Tue Apr 10 19:04:09 2007 for aqbanking by  doxygen 1.4.7