00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef CHIPCARD_DRIVER_SLOT_L_H
00015 #define CHIPCARD_DRIVER_SLOT_L_H
00016
00017
00018 #define LCD_SLOT_STATUS_CARD_INSERTED 0x00010000
00019 #define LCD_SLOT_STATUS_CARD_CONNECTED 0x00020000
00020 #define LCD_SLOT_STATUS_DISABLED 0x00040000
00021
00022 #define LCD_SLOT_FLAGS_PROCESSORCARD 0x00010000
00023 #define LCD_SLOT_FLAGS_HASDISPLAY 0x00020000
00024 #define LCD_SLOT_FLAGS_HASKEYPAD 0x00040000
00025
00026 #include <gwenhywfar/buffer.h>
00027 #include <gwenhywfar/misc.h>
00028 #include <time.h>
00029
00030 typedef struct LCD_SLOT LCD_SLOT;
00031
00032 GWEN_LIST_FUNCTION_DEFS(LCD_SLOT, LCD_Slot);
00033
00034 #include "reader_l.h"
00035
00036
00037 LCD_SLOT *LCD_Slot_new(LCD_READER *r, unsigned int slotNum);
00038 void LCD_Slot_free(LCD_SLOT *sl);
00039
00040 GWEN_TYPE_UINT32 LCD_Slot_GetStatus(const LCD_SLOT *sl);
00041 void LCD_Slot_SetStatus(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00042 void LCD_Slot_AddStatus(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00043 void LCD_Slot_SubStatus(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00044
00045 GWEN_TYPE_UINT32 LCD_Slot_GetFlags(const LCD_SLOT *sl);
00046 void LCD_Slot_SetFlags(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00047 void LCD_Slot_AddFlags(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00048 void LCD_Slot_SubFlags(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00049
00050 GWEN_TYPE_UINT32 LCD_Slot_GetLastStatus(const LCD_SLOT *sl);
00051 void LCD_Slot_SetLastStatus(LCD_SLOT *sl, GWEN_TYPE_UINT32 s);
00052
00053 time_t LCD_Slot_GetLastStatusChange(const LCD_SLOT *sl);
00054
00055 LCD_READER *LCD_Slot_GetReader(const LCD_SLOT *sl);
00056 unsigned int LCD_Slot_GetSlotNum(const LCD_SLOT *sl);
00057
00058 GWEN_TYPE_UINT32 LCD_Slot_GetCardNum(const LCD_SLOT *sl);
00059 void LCD_Slot_SetCardNum(LCD_SLOT *sl, GWEN_TYPE_UINT32 i);
00060
00061 GWEN_BUFFER *LCD_Slot_GetAtr(const LCD_SLOT *sl);
00062 void LCD_Slot_SetAtr(LCD_SLOT *sl, GWEN_BUFFER *atr);
00063
00064 GWEN_TYPE_UINT32 LCD_Slot_GetProtocolInfo(const LCD_SLOT *sl);
00065 void LCD_Slot_SetProtocolInfo(LCD_SLOT *sl, GWEN_TYPE_UINT32 i);
00066
00067
00068
00069 #endif
00070
00071