aqbanking
5.0.24.0-git
|
00001 /*************************************************************************** 00002 $RCSfile$ 00003 ------------------- 00004 cvs : $Id$ 00005 begin : Mon Mar 01 2004 00006 copyright : (C) 2004 by Martin Preuss 00007 email : martin@libchipcard.de 00008 00009 *************************************************************************** 00010 * This file is part of the project "AqBanking". * 00011 * Please see toplevel file COPYING of that project for license details. * 00012 ***************************************************************************/ 00013 00014 00015 #ifndef AQBANKING_BANKINFOPLUGIN_BE_H 00016 #define AQBANKING_BANKINFOPLUGIN_BE_H 00017 00018 #include <aqbanking/bankinfoplugin.h> 00019 00020 00021 typedef struct AB_BANKINFO_PLUGIN AB_BANKINFO_PLUGIN; 00022 00023 #include <aqbanking/banking.h> 00024 #include <gwenhywfar/inherit.h> 00025 #include <gwenhywfar/misc.h> 00026 #include <gwenhywfar/list2.h> 00027 #include <gwenhywfar/plugin.h> 00028 00029 00030 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_BANKINFO_PLUGIN, 00031 AQBANKING_API) 00032 GWEN_LIST2_FUNCTION_LIB_DEFS(AB_BANKINFO_PLUGIN, 00033 AB_BankInfoPlugin, 00034 AQBANKING_API) 00035 00036 00037 typedef AB_BANKINFO_PLUGIN* 00038 (*AB_BANKINFO_PLUGIN_FACTORY_FN)(AB_BANKING *ab); 00039 00040 00041 00046 typedef AB_BANKINFO* 00047 (*AB_BANKINFOPLUGIN_GETBANKINFO_FN)(AB_BANKINFO_PLUGIN *bip, 00048 const char *branchId, 00049 const char *bankId); 00050 00051 typedef int 00052 (*AB_BANKINFOPLUGIN_GETBANKINFOBYTMPLATE_FN)(AB_BANKINFO_PLUGIN *bip, 00053 AB_BANKINFO *tbi, 00054 AB_BANKINFO_LIST2 *bl); 00055 00056 00057 typedef AB_BANKINFO_CHECKRESULT 00058 (*AB_BANKINFOPLUGIN_CHECKACCOUNT_FN)(AB_BANKINFO_PLUGIN *bip, 00059 const char *branchId, 00060 const char *bankId, 00061 const char *accountId); 00070 AQBANKING_API 00071 AB_BANKINFO_PLUGIN *AB_BankInfoPlugin_new(const char *country); 00072 AQBANKING_API 00073 void AB_BankInfoPlugin_free(AB_BANKINFO_PLUGIN *bip); 00074 AQBANKING_API 00075 void AB_BankInfoPlugin_Attach(AB_BANKINFO_PLUGIN *bip); 00084 00085 AQBANKING_API 00086 const char *AB_BankInfoPlugin_GetCountry(const AB_BANKINFO_PLUGIN *bip); 00095 AQBANKING_API 00096 AB_BANKINFO *AB_BankInfoPlugin_GetBankInfo(AB_BANKINFO_PLUGIN *bip, 00097 const char *branchId, 00098 const char *bankId); 00099 00100 AQBANKING_API 00101 int AB_BankInfoPlugin_GetBankInfoByTemplate(AB_BANKINFO_PLUGIN *bip, 00102 AB_BANKINFO *tbi, 00103 AB_BANKINFO_LIST2 *bl); 00104 00105 AQBANKING_API 00106 AB_BANKINFO_CHECKRESULT 00107 AB_BankInfoPlugin_CheckAccount(AB_BANKINFO_PLUGIN *bip, 00108 const char *branchId, 00109 const char *bankId, 00110 const char *accountId); 00118 AQBANKING_API 00119 void AB_BankInfoPlugin_SetGetBankInfoFn(AB_BANKINFO_PLUGIN *bip, 00120 AB_BANKINFOPLUGIN_GETBANKINFO_FN f); 00121 AQBANKING_API 00122 void AB_BankInfoPlugin_SetGetBankInfoByTemplateFn(AB_BANKINFO_PLUGIN *bip, 00123 AB_BANKINFOPLUGIN_GETBANKINFOBYTMPLATE_FN f); 00124 AQBANKING_API 00125 void AB_BankInfoPlugin_SetCheckAccountFn(AB_BANKINFO_PLUGIN *bip, 00126 AB_BANKINFOPLUGIN_CHECKACCOUNT_FN f); 00131 typedef AB_BANKINFO_PLUGIN* (*AB_PLUGIN_BANKINFO_FACTORY_FN)(GWEN_PLUGIN *pl, 00132 AB_BANKING *ab); 00133 00134 00135 AQBANKING_API 00136 GWEN_PLUGIN *AB_Plugin_BankInfo_new(GWEN_PLUGIN_MANAGER *pm, 00137 const char *name, 00138 const char *fileName); 00139 00140 00141 AQBANKING_API 00142 AB_BANKINFO_PLUGIN *AB_Plugin_BankInfo_Factory(GWEN_PLUGIN *pl, AB_BANKING *ab); 00143 00144 AQBANKING_API 00145 void AB_Plugin_BankInfo_SetFactoryFn(GWEN_PLUGIN *pl, 00146 AB_PLUGIN_BANKINFO_FACTORY_FN fn); 00147 00148 00149 00150 #endif /* AQBANKING_BANKINFOPLUGIN_BE_H */ 00151 00152 00153 00154