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
#ifndef CTGELDKARTE_H
00033 #define CTGELDKARTE_H "$Id: ctgeldkarte.h,v 1.4 2003/04/24 01:43:29 aquamaniac Exp $"
00034
00035
#include <chipcard/ctprocessorcard.h>
00036
00041 class CTGeldKarte:
public CTProcessorCard {
00042
public:
00047 class CHIPCARD_API CardData {
00048
private:
00049
unsigned char _industrialkey;
00050
unsigned int _shortinstcode;
00051 string _cardnumber;
00052
unsigned char _bestuntil_year;
00053
unsigned char _bestuntil_month;
00054
unsigned char _active_year;
00055
unsigned char _active_month;
00056
unsigned char _active_day;
00057
unsigned short _countrycode;
00058 string _currency;
00059
unsigned char _value;
00060
00061
public:
00062 CardData();
00063 CardData(
const string &s);
00064 ~CardData();
00065
00070 int industrialKey()
const {
return _industrialkey;};
00074 unsigned int shortInstituteCode()
const {
return _shortinstcode;};
00078 const string &cardNumber()
const {
return _cardnumber;};
00082 int bestuntil_year()
const {
return _bestuntil_year;};
00086 int bestuntil_month()
const {
return _bestuntil_month;};
00090 int active_year()
const {
return _active_year;};
00094 int active_month()
const {
return _active_month;};
00098 int active_day()
const {
return _active_day;};
00102 int countryCode()
const {
return _countrycode;};
00106 const string ¤cy()
const {
return _currency;};
00107
00119 int value()
const {
return _value;};
00120
00121 };
00122
00123
00124
private:
00125 CardData _ef_id;
00126
00127 string _cmdReadRecord;
00128
CTError _openCard();
00129
00130
00131
public:
00139
CTGeldKarte(
const CTCard &c);
00140
00141
virtual ~CTGeldKarte();
00143
00162
virtual CTError reopenCard();
00164
00175
virtual string
cardType();
00176
00185
virtual string
cardTypes();
00187
00205
virtual CTError openCard();
00206
00207
00208 const CardData &
cardData()
const {
return _ef_id;};
00209
00216
double readLoadedValue();
00217
00222
double readMaxLoadedValue();
00223
00229
double readMaxTransactionValue();
00230
00231 };
00232
00233
00234
00235
00236
#endif
00237
00238
00239