outbox.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile: outbox.h,v $
00003                              -------------------
00004     cvs         : $Id: outbox.h,v 1.1 2005/08/05 20:33:11 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 
00013 #ifndef AH_OUTBOX_H
00014 #define AH_OUTBOX_H
00015 
00016 
00017 #define AH_OUTBOX_FLAGS_ENDDIALOG 0x00000001
00018 
00019 #define AH_OUTBOX_FLAGS_DEFAULT \
00020   (\
00021   AH_OUTBOX_FLAGS_ENDDIALOG \
00022   )
00023 
00024 #define AH_OUTBOX_EXECUTE_WCB_ID "AH_OUTBOX_EXECUTE_WCB_ID"
00025 
00026 //#define AH_OUTBOX_EXECUTE_SEND_TIMEOUT 30
00027 //#define AH_OUTBOX_EXECUTE_RECV_TIMEOUT 30
00028 
00029 
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033 typedef struct AH_OUTBOX AH_OUTBOX;
00034 #ifdef __cplusplus
00035 }
00036 #endif
00037 
00038 #include <gwenhywfar/inherit.h>
00039 #include <aqhbci/hbci.h>
00040 #include <aqhbci/customer.h>
00041 #include <aqhbci/job.h>
00042 
00043 
00044 #ifdef __cplusplus
00045 extern "C" {
00046 #endif
00047 
00048 
00049 AH_OUTBOX *AH_Outbox_new(AH_HBCI *hbci);
00050 void AH_Outbox_free(AH_OUTBOX *ob);
00051 void AH_Outbox_Attach(AH_OUTBOX *ob);
00052 
00053 void AH_Outbox_AddJob(AH_OUTBOX *ob, AH_JOB *j);
00054 void AH_Outbox_AddPendingJob(AH_OUTBOX *ob, AB_JOB *bj);
00055 
00056 /* makes all jobs commit their data */
00057 void AH_Outbox_Commit(AH_OUTBOX *ob);
00058 
00059 
00060 /* makes all jobs process their data */
00061 void AH_Outbox_Process(AH_OUTBOX *ob);
00062 
00063 /* makes all jobs commit their system data (only calls
00064  * @ref AH_Job_DefaultCommitHandler which only commits system data
00065  * like account data, bank parameter data etc according to the flags in
00066  * @ref AH_HBCIClient).
00067  */
00068 void AH_Outbox_CommitSystemData(AH_OUTBOX *ob);
00069 
00070 
00071 unsigned int AH_Outbox_CountTodoJobs(AH_OUTBOX *ob);
00072 unsigned int AH_Outbox_CountFinishedJobs(AH_OUTBOX *ob);
00073 
00074 
00075 int AH_Outbox_Execute(AH_OUTBOX *ob, int withProgress, int nounmount);
00076 
00077 
00078 AH_JOB *AH_Outbox_FindTransferJob(AH_OUTBOX *ob,
00079                                   AH_CUSTOMER *cu,
00080                                   AH_ACCOUNT *a,
00081                                   int isTransfer);
00082 
00083 #ifdef __cplusplus
00084 }
00085 #endif
00086 
00087 
00088 #endif /* AH_OUTBOX_H */
00089 

Generated on Sat Jan 7 04:22:41 2006 for aqbanking by  doxygen 1.4.6