00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef AQBANKING_ACCOUNT_H
00015 #define AQBANKING_ACCOUNT_H
00016
00017 #include <gwenhywfar/misc.h>
00018 #include <gwenhywfar/list2.h>
00019 #include <gwenhywfar/inherit.h>
00020 #include <gwenhywfar/types.h>
00021 #include <gwenhywfar/db.h>
00022 #include <gwenhywfar/stringlist.h>
00023 #include <aqbanking/error.h>
00024
00025
00033
00034
00035 #ifdef __cplusplus
00036 extern "C" {
00037 #endif
00038
00039
00040 typedef struct AB_ACCOUNT AB_ACCOUNT;
00041 GWEN_INHERIT_FUNCTION_LIB_DEFS(AB_ACCOUNT, AQBANKING_API)
00042 GWEN_LIST2_FUNCTION_LIB_DEFS(AB_ACCOUNT, AB_Account, AQBANKING_API)
00043
00044
00045
00046 void AB_Account_List2_FreeAll(AB_ACCOUNT_LIST2 *al);
00047
00048 typedef enum {
00049 AB_AccountType_Unknown=0,
00050 AB_AccountType_Bank,
00051 AB_AccountType_CreditCard,
00052 AB_AccountType_Checking,
00053 AB_AccountType_Savings,
00054 AB_AccountType_Investment,
00055 AB_AccountType_Cash
00056 } AB_ACCOUNT_TYPE;
00057
00058 #ifdef __cplusplus
00059 }
00060 #endif
00061
00062
00063 #include <aqbanking/banking.h>
00064 #include <aqbanking/provider.h>
00065 #include <aqbanking/job.h>
00066 #include <aqbanking/user.h>
00067
00068
00069 #ifdef __cplusplus
00070 extern "C" {
00071 #endif
00072
00073 AQBANKING_API
00074 void AB_Account_free(AB_ACCOUNT *acc);
00075
00076 AQBANKING_API
00077 AB_BANKING *AB_Account_GetBanking(const AB_ACCOUNT *acc);
00078
00079 AQBANKING_API
00080 AB_ACCOUNT_TYPE AB_Account_GetAccountType(const AB_ACCOUNT *acc);
00081 AQBANKING_API
00082 void AB_Account_SetAccountType(AB_ACCOUNT *acc, AB_ACCOUNT_TYPE t);
00083
00084 AQBANKING_API
00085 GWEN_TYPE_UINT32 AB_Account_GetUniqueId(const AB_ACCOUNT *acc);
00086
00087 AQBANKING_API
00088 void AB_Account_SetUniqueId(AB_ACCOUNT *acc, GWEN_TYPE_UINT32 id);
00089
00090 AQBANKING_API
00091 const char *AB_Account_GetBackendName(const AB_ACCOUNT *acc);
00092
00093
00094 AQBANKING_API
00095 AB_PROVIDER *AB_Account_GetProvider(const AB_ACCOUNT *acc);
00096
00097 AQBANKING_API
00098 GWEN_DB_NODE *AB_Account_GetAppData(const AB_ACCOUNT *acc);
00099 AQBANKING_API
00100 GWEN_DB_NODE *AB_Account_GetProviderData(const AB_ACCOUNT *acc);
00101
00102 AQBANKING_API
00103 const char *AB_Account_GetAccountNumber(const AB_ACCOUNT *acc);
00104 AQBANKING_API
00105 void AB_Account_SetAccountNumber(AB_ACCOUNT *acc, const char *s);
00106
00107 AQBANKING_API
00108 const char *AB_Account_GetBankCode(const AB_ACCOUNT *acc);
00109 AQBANKING_API
00110 void AB_Account_SetBankCode(AB_ACCOUNT *acc, const char *s);
00111
00116 AQBANKING_API
00117 const char *AB_Account_GetAccountName(const AB_ACCOUNT *acc);
00118 AQBANKING_API
00119 void AB_Account_SetAccountName(AB_ACCOUNT *acc, const char *s);
00120
00122 AQBANKING_API
00123 const char *AB_Account_GetBankName(const AB_ACCOUNT *acc);
00124 AQBANKING_API
00125 void AB_Account_SetBankName(AB_ACCOUNT *acc, const char *s);
00126
00127 AQBANKING_API
00128 const char *AB_Account_GetOwnerName(const AB_ACCOUNT *acc);
00129 AQBANKING_API
00130 void AB_Account_SetOwnerName(AB_ACCOUNT *acc, const char *s);
00131
00132 AQBANKING_API
00133 const char *AB_Account_GetCurrency(const AB_ACCOUNT *acc);
00134
00135 AQBANKING_API
00136 void AB_Account_SetCurrency(AB_ACCOUNT *acc, const char *s);
00137
00141 AQBANKING_API
00142 const char *AB_Account_GetCountry(const AB_ACCOUNT *acc);
00143
00144 AQBANKING_API
00145 void AB_Account_SetCountry(AB_ACCOUNT *acc, const char *s);
00146
00152 AQBANKING_API
00153 AB_USER_LIST2 *AB_Account_GetUsers(const AB_ACCOUNT *acc);
00154
00155 AQBANKING_API
00156 AB_USER *AB_Account_GetFirstUser(const AB_ACCOUNT *acc);
00157
00158 AQBANKING_API
00159 void AB_Account_SetUsers(AB_ACCOUNT *acc, const AB_USER_LIST2 *ul);
00160
00161 AQBANKING_API
00162 void AB_Account_SetUser(AB_ACCOUNT *acc, const AB_USER *u);
00163
00164
00165 AQBANKING_API
00166 AB_USER_LIST2 *AB_Account_GetSelectedUsers(const AB_ACCOUNT *acc);
00167
00168 AQBANKING_API
00169 AB_USER *AB_Account_GetFirstSelectedUser(const AB_ACCOUNT *acc);
00170
00171 AQBANKING_API
00172 void AB_Account_SetSelectedUsers(AB_ACCOUNT *acc, const AB_USER_LIST2 *ul);
00173
00174 AQBANKING_API
00175 void AB_Account_SetSelectedUser(AB_ACCOUNT *a, const AB_USER *u);
00176
00177
00178
00179
00180 #ifdef __cplusplus
00181 }
00182 #endif
00183
00184
00186
00187
00188 #endif