00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef PROGRESSMONITOR_H
00029 #define PROGRESSMONITOR_H
00030
00036 #ifdef __cplusplus
00037 #include <string>
00038 using namespace std;
00039 #endif
00040 #include <openhbci/dllimport.h>
00041
00044 typedef enum TransProgressType
00045 {
00047 TRANS_JOBQUEUE = 1
00048 } TransProgressType;
00049
00053 typedef enum JobProgressType
00054 {
00056 JOB_OPENINGDIALOG = 1,
00058 JOB_CLOSINGDIALOG,
00060 JOB_OPENINGNETWORK,
00062 JOB_CLOSINGNETWORK,
00064 JOB_GET_BALANCE,
00066 JOB_GET_TRANS,
00068 JOB_NEW_TRANSFER,
00070 JOB_DEBIT_NOTE,
00072 JOB_GET_STO,
00074 JOB_NEW_STO,
00076 JOB_DELETE_STO,
00078 JOB_GET_ACCOUNTS,
00080 JOB_GET_SYSTEMID,
00082 JOB_GET_KEYS,
00084 JOB_SEND_KEYS,
00086 JOB_DISABLE_KEYS,
00088 JOB_CHANGE_KEYS,
00090 JOB_GET_STATUS
00091 } JobProgressType;
00092
00095 typedef enum ActionProgressType
00096 {
00098 ACT_SENDINGMESSAGE = 1,
00100 ACT_WAITRESPONSE,
00102 ACT_CREATEHBCIJOB,
00104 ACT_CONTACTINGSERVER,
00106 ACT_CHKRESULT,
00108 ACT_UPDATESYSTEM,
00110 ACT_CLOSECONNECTION
00111 } ActionProgressType;
00112
00113 #ifdef __cplusplus
00114
00115 namespace HBCI {
00116
00127 class DLLIMPORT ProgressMonitor {
00128 public:
00129 ProgressMonitor(){};
00130 virtual ~ProgressMonitor(){};
00131
00153 virtual void transactionStarted(TransProgressType type,
00154 string const &descr,
00155 int jobs);
00156
00164 virtual void transactionFinished();
00165
00186 virtual void jobStarted(JobProgressType type,
00187 const string &descr,
00188 int actions);
00189
00196 virtual void jobFinished();
00197
00214 virtual void actionStarted(ActionProgressType type,
00215 const string &descr);
00216
00226 virtual void actionFinished();
00227
00241 virtual void logMessage(const string &msg);
00242 };
00243
00244 }
00245 typedef struct HBCI::ProgressMonitor HBCI_ProgressMonitor;
00246
00247 #else
00248 typedef struct HBCI_ProgressMonitor HBCI_ProgressMonitor;
00249 #endif
00250
00251 #endif