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
00029
00030
00031
00032
00033
00034 #ifndef CTKVKCARD_H
00035 #define CTKVKCARD_H
00036
00037 struct insuranceData;
00038 class CTKVKCard;
00039
00040
00041 #define k_KVK_AE 0x5b
00042 #define k_KVK_OE 0x5c
00043 #define k_KVK_UE 0x5d
00044 #define k_KVK_ae 0x7b
00045 #define k_KVK_oe 0x7c
00046 #define k_KVK_ue 0x7d
00047 #define k_KVK_ss 0x7e
00048
00049
00050 #include <string>
00051
00052 #include <chipcard/cterror.h>
00053 #include <chipcard/ctcard.h>
00054 #include <chipcard/ctmemorycard.h>
00055
00056
00062 struct insuranceData {
00064 string insuranceCompanyName;
00066 string insuranceCompanyCode;
00068 string insuranceNumber;
00070 string insuranceState;
00072 string title;
00074 string forename;
00076 string nameSuffix;
00078 string name;
00080 string dateOfBirth;
00082 string addrStreet;
00084 string addrState;
00086 string addrPostalCode;
00088 string addrCity;
00090 string bestBefore;
00092 string eastOrWest;
00094 string cardNumber;
00096 bool isValid;
00097 };
00098
00099
00106 class CHIPCARD_API CTKVKCard : public CTMemoryCard {
00107 private:
00108 bool _fromString(string s, insuranceData &data);
00109
00110 public:
00126 CTKVKCard(const CTCard &c);
00127
00128 ~CTKVKCard();
00130
00149 virtual CTError reopenCard();
00151
00162 virtual string cardType();
00163
00172 virtual string cardTypes();
00174
00190 CTError readCardData(insuranceData &data);
00192
00193 };
00194
00195
00196 #endif
00197
00198
00199
00200
00201
00202