AppCore
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ECardFacadeDefines.h
Go to the documentation of this file.
1 #ifndef _ECARDFACADEDEFINES_H_
2 #define _ECARDFACADEDEFINES_H_
3 
4 #ifndef __GNUC__
5  #ifdef DLL_EXPORTS
6  #define DLL_API __declspec(dllexport)
7  #else
8  #define DLL_API __declspec(dllimport)
9  #endif
10 #else
11  #define DLL_API
12 #endif
13 
14 namespace EM
15 {
16  namespace CardFacade
17  {
18  extern const unsigned char UNDEFINED_PRICE_UNIT;
19 
20  class DLL_API ECardFacadeDefines
21  {
22  private:
23  enum OperationBits
24  {
25  UnspecifiedBit = 0x0000,
26  TimeTicketBit = 0x0001,
27  OneWayTicketBit = 0x0002,
28  PurseBit = 0x0004,
29  CommonBit = 0x0008,
30  ServiceBit = 0x0010,
31  CommercialDiscountBit = 0x0020,
32  DiscountCouponBit = 0x0040,
33  CardHolderBit = 0x0080,
34  EventsDataBit = 0x0100
35  };
36 
37  public:
39  {
40  OWTCardFeatureUndefined = 0x0000,
41  OWTCardFeatureLine = 0x0001,
42  OWTCardFeatureTrip = 0x0002,
43  OWTCardFeatureProtectNumber = 0x0004,
44  OWTCardFeaturePurseJourneyWritable = 0x0008,
45  OWTCardFeaturePrepaidJourneyWritable = 0x0010,
46  /*
47  * Feature pre zistenie akym sposobom sa poznacuje na kartu cas platnosti.
48  * Su dve moznosti:
49  * a) karta ma polozky 'zaciatok platnosti' a 'cas/ dlzka platnosti'
50  * - Transdata struktura Mifare/Desfire standard
51  * - Microelektronika2 mifare standard struktura
52  * - Emtest IDOL struktury
53  * b) karta ma polozky 'zaciatok platnosti' a 'koniec platnosti'
54  * - XT Desfire struktura
55  * - Microelektronika1 mifare standard struktura
56  */
57  OWTCardFeatureTimeValidityDuration = 0x0020,
58  OWTCardFeatureTariff = 0x0040,
59  OWTCardFeatureSummaryPrice = 0x0080,
60  OWTCardFeatureTimeValidityStart = 0x0100,
61  OWTCardFeatureTimeValidityEnd = 0x0200,
62  OWTCardFeatureSupportedCheckOutBusStop = 0x0400,
63  OWTCardFeatureClearTicketOnCancel = 0x0800,
64  OWTCardFeatureCheckInCheckOutZone = 0x1000
65  };
66 
68  {
69  LogCardFeatureUndefined = 0x00,
70  LogCardFeatrueCardStructureSupported = 0x01
71  };
72 
74  {
75  AnswerCardFeatureUndefined = 0x00
76  };
77 
79  {
80  CommonCardFeatureUndefined = 0x00,
81  CommonCardFeaturePublisherVersion = 0x01,
82  CommonCardFeatureCountryCode = 0x02,
83  CommonCardFeatureNetworkCode = 0x04,
84  /*
85  * Feature pre overenie ci je regionalny kod podporovany na strukture karty reprezentujucu dopravnu cast(penazenku).
86  *
87  * Regionalny kod sa moze nachadzat bud na karte(penazenka) alebo zlavovom kupone.
88  * Podporovane len pre Desfire implementaciu.
89  *
90  * Pozor, BMK karta je reprezentovana voci app ako Desfire ale nepodporuje regionalny kod na dopravnej casti(penazenke).
91  * Na odlisenie Desfire/BMK je mozne pouzit ECardFacadeDefines::CommonDataFeatureHasRegionCardNumber.
92  */
93  CommonCardFeatureRegionCodeOnCard = 0x08,
94  CommonCardFeatureCapping = 0x10
95  };
96 
98  {
99  PurseCardFeatureUndefined = 0x00,
100  PurseCardFeatureRequiredApplicationChecking = 0x01
101  };
102 
104  {
105  ServiceCardFeatureUndefined = 0x00
106  };
107 
109  {
110  CommercialDiscountCardFeatureUndefined = 0x00
111  };
112 
114  {
115  TimeTicketCardFeatureUndefined = 0x00,
116  TimeTicketCardFeatureCounterWritable = 0x01,
117  TimeTicketCardFeatureNetworkWideStructureSupport = 0x02,
118  TimeTicketCardFeatureProlongIndexOnlyOnSameType = 0x04,
119  TimeTicketCardFeatureFillEmptySlotFirst = 0x08,
120  TimeTicketCardFeatureClearTicketOnCancel = 0x10,
121  TimeTicketCardFeatureFileNumber = 0x20
122  };
123 
125  {
126  TimeTicketFeatureUndefined = 0x00,
127  TimeTicketFeatureUrbanTransportNumber = 0x01,
128  TimeTicketFeatureNetworkID = 0x02,
129  TimeTicketFeaturePreviousNumber = 0x04,
130  TimeTicketFeatureProviderNumber = 0x08,
131  TimeTicketFeaturePairedTimeTicket = 0x10
132  };
133 
135  {
136  CommonDataFeatureUndefined = 0x00,
137  CommonDataFeatureCustomerProfileValidityStart = 0x01,
138  /* Desfire karty podporuju regionCardNumber (CommonCardFeatureRegionCodeOnCard), avsak pri BMK sa
139  * to nevyuziva - pokus o nacitanie RegionCardNumber pri BMK skonci chybou.
140  */
141  CommonDataFeatureHasRegionCardNumber = 0x02
142  };
143 
145  {
146  Ok = 0,
147  NullDataCollection = 1,
148  NullAnswer = 2,
149  NullEOneWayticketCollection = 3,
150  NullTimeTicketCollection = 4,
151  NullSuperCardVersion = 5,
152  UndefinedCardType = 6,
153  BadInputParameter = 7,
154  BadActualCardStructure = 8,
155  BadAbstractAnswer = 9,
156  ErrAddDataToWriteRequest = 10,
157  ErrAddDataToReadRequest = 11,
158  ErrorNullImplementation = 12
159  };
160 
162  {
163  Read = 0,
164  Writing = 1,
165  CardFacadeCount = 2
166  };
167 
168  enum CardType
169  {
170  Mifare = 0,
171  Desfire = 1,
172  VDVKa = 2,
173  DesfireXT = 3,
174  MifareMikroelektronika1 = 4,
175  MifareMikroelektronika2 = 5,
176  MifareIDOL = 6,
177  DesfireAcos = 7,
178  DesfireService = 8,
179  CardTypeCount = 9
180  };
181 
191  {
192  TimeTicketTypeUndefined = -1,
193  //TimeTicketType24Hours = 0,
194  TimeTicketTypeTrip = 1,
195  TimeTicketTypeRegionInterval = 2, // zonovy casovy listok - valid zones are defined by (closed) interval e.g. [55,124]
196  TimeTicketTypeTariffArea = 3, // pasmovy casovy listok
197  TimeTicketTypeZoneList = 4, // all zones are accessible through ZoneList, has no Check-IN/OUT zone
198  TimeTicketTypeZoneVia = 5, // has Check-IN/OUT zone, and ViaZones (accessible byt ZoneList) too
199  TimeTicketTypeTimeValidityOnly = 6, // time ticket has only time validity (no zones or other additinal restrictions)
200  TimeTicketTypeRelation = 7, // relation of zones or busstops (from-to and possible via)
201  TimeTicketTypeNetworkWide = 8,
202  TimeTicketTypeKilometric = 9
203  };
204 
206  {
207  OneWayTicketTypeUndefined = -1,
208  OneWayTicketTypeStandard = 0,
209  OneWayTicketTypeRelation = 1,
210  OneWayTicketTypeZoneList = 2,
211  OneWayTicketTypeZoneVia = 3,
212  OneWayTicketTypeZoneAmount = 4,
213  OneWayTicketTypeNetworkWide = 5
214  };
215 
217  {
218  EncodingUndefined = 0, // means that application has to decide according to the project
219  EncodingUtf8 = 1
220  };
221 
223  {
224  NoOperation = UnspecifiedBit,
225  TimeTicketOperation = TimeTicketBit,
226  OneWayTicketOperation = OneWayTicketBit,
227  PurseOperation = PurseBit,
228  CommonDataOperation = CommonBit,
229  ServiceDataOperation = ServiceBit,
230  CommercialDiscountOperation = CommercialDiscountBit,
231  DiscountCouponOperation = DiscountCouponBit,
232  CardHolderDataOperation = CardHolderBit,
233  EventsDataOperation = EventsDataBit,
234  DefaultDataTypesOperation = CommonBit | OneWayTicketBit,
235  FullDataTypesOperation = CommonBit | OneWayTicketBit | ServiceBit | PurseBit | TimeTicketBit
236  };
237 
239  {
240  UndefinedServiceCardType = -1,
241  DriverNoCompanyCard = 0,
242  ServiceCard = 1,
243  DriverCard = 2,
244  AuditorCard = 3
245  };
246 
248  {
249  StandardUndefined = 0,
250  StandardCardTypeEmtest = 1,
251  StandardCardTypeEN1545 = 2
252  };
253 
255  {
256  WalletISOCountryCodeUndefined = 0,
257  WalletISOCountryCodeCzech = 203,
258  WalletISOCountryCodeGermany = 276,
259  WalletISOCountryCodeLithuania = 440,
260  WalletISOCountryCodePoland = 616,
261  WalletISOCountryCodeSlovakia = 703,
262  WalletISOCountryCodeSlovenia = 705,
263  WalletISOCountryCodeMacedonia = 807
264  };
265 
267  {
268  WalletISOPayUnitCodeUndefined = 0,
269  WalletISOPayUnitCodeCroatianKuna = 191,
270  WalletISOPayUnitCodeCzechKoruna = 203,
271  WalletISOPayUnitCodeHungarianForint = 348,
272  WalletISOPayUnitCodeLithuanianLitas = 440,
273  WalletISOPayUnitCodeSlovakKoruna = 703,
274  WalletISOPayUnitCodeMacedonianDenar = 807,
275  WalletISOPayUnitCodeEur = 978,
276  WalletISOPayUnitCodePolishZloty = 985
277  };
278 
280  {
281  CappingProviderTypeUndefined = -1,
282  CappingProviderTypeProviderCode = 0,
283  CappingProviderTypeNetworkCode = 1
284  };
285  };
286  }
287 }
288 
289 #endif // _ECARDFACADEDEFINES_H_
OneWayTicketCardFeaturesEnum
Definition: ECardFacadeDefines.h:38
ServiceCardType
Definition: ECardFacadeDefines.h:238
const unsigned char UNDEFINED_PRICE_UNIT
Definition: ECardFacadeDefines.cpp:7
LogCardFeatures
Definition: ECardFacadeDefines.h:67
CappingProviderType
Definition: ECardFacadeDefines.h:279
ReturnValues
Definition: ECardFacadeDefines.h:144
WalletISOPayUnitCode
Definition: ECardFacadeDefines.h:266
#define DLL_API
Definition: ECardFacadeDefines.h:8
OneWayTicketType
Definition: ECardFacadeDefines.h:205
DataTypeOperation
Definition: ECardFacadeDefines.h:222
CardType
Definition: ECardFacadeDefines.h:168
ServiceCardFeatures
Definition: ECardFacadeDefines.h:103
AnswerCardFeatures
Definition: ECardFacadeDefines.h:73
CommonCardFeatures
Definition: ECardFacadeDefines.h:78
TimeTicketCardFeatures
Definition: ECardFacadeDefines.h:113
TextEncoding
Definition: ECardFacadeDefines.h:216
CardFacadeType
Definition: ECardFacadeDefines.h:161
CommercialDiscountCardFeatures
Definition: ECardFacadeDefines.h:108
TimeTicketType
The TimeTicketType enum.
Definition: ECardFacadeDefines.h:190
SYSTEM INCLUDES.
Definition: CardFacadeManagerXML.h:6
CardTypeStandard
Definition: ECardFacadeDefines.h:247
CommonDataFeatures
Definition: ECardFacadeDefines.h:134
PurseCardFeatures
Definition: ECardFacadeDefines.h:97
WalletISOCountryCode
Definition: ECardFacadeDefines.h:254
TimeTicketFeatures
Definition: ECardFacadeDefines.h:124