• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

account.h

Go to the documentation of this file.
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_ACCOUNT_H
00016 #define AQBANKING_ACCOUNT_H
00017 
00018 #include <gwenhywfar/misc.h>
00019 #include <gwenhywfar/list2.h>
00020 #include <gwenhywfar/inherit.h>
00021 #include <gwenhywfar/types.h>
00022 #include <gwenhywfar/db.h>
00023 #include <gwenhywfar/stringlist.h>
00024 #include <aqbanking/error.h> /* for AQBANKING_API */
00025 
00026 
00034 
00035 
00036 #ifdef __cplusplus
00037 extern "C" {
00038 #endif
00039 
00040 
00041 typedef struct AB_ACCOUNT AB_ACCOUNT;
00042 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_ACCOUNT, AQBANKING_API)
00043 GWEN_LIST2_FUNCTION_LIB_DEFS(AB_ACCOUNT, AB_Account, AQBANKING_API)
00044 /* Do not terminate these lines with semicolon because they are
00045    macros, not functions, and ISO C89 does not allow a semicolon
00046    there. */
00047 void AB_Account_List2_FreeAll(AB_ACCOUNT_LIST2 *al);
00048 
00049 typedef enum {
00050   AB_AccountType_Unknown=0,
00051   AB_AccountType_Bank,
00052   AB_AccountType_CreditCard,
00053   AB_AccountType_Checking,
00054   AB_AccountType_Savings,
00055   AB_AccountType_Investment,
00056   AB_AccountType_Cash,
00057   AB_AccountType_MoneyMarket
00058 } AB_ACCOUNT_TYPE;
00059 
00060 #ifdef __cplusplus
00061 }
00062 #endif
00063 
00064 
00065 #include <aqbanking/banking.h>
00066 #include <aqbanking/provider.h>
00067 #include <aqbanking/job.h>
00068 #include <aqbanking/user.h>
00069 
00070 
00071 #ifdef __cplusplus
00072 extern "C" {
00073 #endif
00074 
00075 AQBANKING_API 
00076 void AB_Account_free(AB_ACCOUNT *acc);
00077 
00078 AQBANKING_API 
00079 AB_BANKING *AB_Account_GetBanking(const AB_ACCOUNT *acc);
00080 
00081 AQBANKING_API 
00082 AB_ACCOUNT_TYPE AB_Account_GetAccountType(const AB_ACCOUNT *acc);
00083 AQBANKING_API 
00084 void AB_Account_SetAccountType(AB_ACCOUNT *acc, AB_ACCOUNT_TYPE t);
00085 
00086 AQBANKING_API 
00087 uint32_t AB_Account_GetUniqueId(const AB_ACCOUNT *acc);
00088 
00089 AQBANKING_API
00090 void AB_Account_SetUniqueId(AB_ACCOUNT *acc, uint32_t id);
00091 
00092 AQBANKING_API 
00093 const char *AB_Account_GetBackendName(const AB_ACCOUNT *acc);
00094 
00095 
00096 AQBANKING_API 
00097 AB_PROVIDER *AB_Account_GetProvider(const AB_ACCOUNT *acc);
00098 
00099 AQBANKING_API 
00100 const char *AB_Account_GetAccountNumber(const AB_ACCOUNT *acc);
00101 AQBANKING_API 
00102 void AB_Account_SetAccountNumber(AB_ACCOUNT *acc, const char *s);
00103 
00104 AQBANKING_API 
00105 const char *AB_Account_GetBankCode(const AB_ACCOUNT *acc);
00106 AQBANKING_API 
00107 void AB_Account_SetBankCode(AB_ACCOUNT *acc, const char *s);
00108 
00113 AQBANKING_API 
00114 const char *AB_Account_GetAccountName(const AB_ACCOUNT *acc);
00115 AQBANKING_API 
00116 void AB_Account_SetAccountName(AB_ACCOUNT *acc, const char *s);
00117 
00119 AQBANKING_API 
00120 const char *AB_Account_GetBankName(const AB_ACCOUNT *acc);
00121 AQBANKING_API 
00122 void AB_Account_SetBankName(AB_ACCOUNT *acc, const char *s);
00123 
00124 AQBANKING_API 
00125 const char *AB_Account_GetIBAN(const AB_ACCOUNT *a);
00126 AQBANKING_API 
00127 void AB_Account_SetIBAN(AB_ACCOUNT *a, const char *s);
00128 
00129 
00130 AQBANKING_API 
00131 const char *AB_Account_GetBIC(const AB_ACCOUNT *a);
00132 AQBANKING_API 
00133 void AB_Account_SetBIC(AB_ACCOUNT *a, const char *s);
00134 
00135 
00136 AQBANKING_API 
00137 const char *AB_Account_GetOwnerName(const AB_ACCOUNT *acc);
00138 AQBANKING_API
00139 void AB_Account_SetOwnerName(AB_ACCOUNT *acc, const char *s);
00140 
00141 AQBANKING_API 
00142 const char *AB_Account_GetCurrency(const AB_ACCOUNT *acc);
00143 
00144 AQBANKING_API 
00145 void AB_Account_SetCurrency(AB_ACCOUNT *acc, const char *s);
00146 
00150 AQBANKING_API 
00151 const char *AB_Account_GetCountry(const AB_ACCOUNT *acc);
00152 
00153 AQBANKING_API
00154 void AB_Account_SetCountry(AB_ACCOUNT *acc, const char *s);
00155 
00161 AQBANKING_API
00162 AB_USER_LIST2 *AB_Account_GetUsers(const AB_ACCOUNT *acc);
00163 
00164 AQBANKING_API
00165 AB_USER *AB_Account_GetFirstUser(const AB_ACCOUNT *acc);
00166 
00167 AQBANKING_API
00168 void AB_Account_SetUsers(AB_ACCOUNT *acc, const AB_USER_LIST2 *ul);
00169 
00170 AQBANKING_API
00171 void AB_Account_SetUser(AB_ACCOUNT *acc, const AB_USER *u);
00172 
00173 
00174 AQBANKING_API
00175 AB_USER_LIST2 *AB_Account_GetSelectedUsers(const AB_ACCOUNT *acc);
00176 
00177 AQBANKING_API
00178 AB_USER *AB_Account_GetFirstSelectedUser(const AB_ACCOUNT *acc);
00179 
00180 AQBANKING_API
00181 void AB_Account_SetSelectedUsers(AB_ACCOUNT *acc, const AB_USER_LIST2 *ul);
00182 
00183 AQBANKING_API
00184 void AB_Account_SetSelectedUser(AB_ACCOUNT *a, const AB_USER *u);
00185 
00186 
00187 #ifdef __cplusplus
00188 }
00189 #endif
00190 
00191  /* defgroup */
00193 
00194 
00195 #endif /* AQBANKING_ACCOUNT_H */

Generated on Mon Sep 20 2010 18:13:21 for aqbanking by  doxygen 1.7.1