00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef CHIPCARD_SERVER2_CM_CARDMGR_L_H
00016 #define CHIPCARD_SERVER2_CM_CARDMGR_L_H
00017
00018 typedef struct LCCM_CARDMANAGER LCCM_CARDMANAGER;
00019
00020 #include "cm_card_l.h"
00021 #include "server_l.h"
00022
00023 #include <time.h>
00024
00025
00026
00027 LCCM_CARDMANAGER *LCCM_CardManager_new(LCS_SERVER *server);
00028 void LCCM_CardManager_free(LCCM_CARDMANAGER *cm);
00029
00030 int LCCM_CardManager_Init(LCCM_CARDMANAGER *cm, GWEN_DB_NODE *dbConfig);
00031 int LCCM_CardManager_Fini(LCCM_CARDMANAGER *cm, GWEN_DB_NODE *dbConfig);
00032
00033 void LCCM_CardManager_NewCard(LCCM_CARDMANAGER *cm, LCCO_CARD *card);
00034
00035 void LCCM_CardManager_ReaderDown(LCCM_CARDMANAGER *cm, GWEN_TYPE_UINT32 rid);
00036 void LCCM_CardManager_ClientDown(LCCM_CARDMANAGER *cm, GWEN_TYPE_UINT32 clid);
00037
00038
00039 void LCCM_CardManager_CardRemoved(LCCM_CARDMANAGER *cm,
00040 GWEN_TYPE_UINT32 rid,
00041 int slotNum,
00042 GWEN_TYPE_UINT32 cardNum);
00043
00044 LCCO_CARD *LCCM_CardManager_FindCard(LCCM_CARDMANAGER *cm,
00045 GWEN_TYPE_UINT32 cid);
00046
00047 LCCO_CARD *LCCM_CardManager_GetFirstCard(LCCM_CARDMANAGER *cm);
00048 LCCO_CARD *LCCM_CardManager_GetNextCard(LCCM_CARDMANAGER *cm,
00049 LCCO_CARD *card);
00050
00051
00052 int LCCM_CardManager_RequestLockCard(LCCM_CARDMANAGER *cm,
00053 LCCO_CARD *card,
00054 GWEN_TYPE_UINT32 clid,
00055 int duration,
00056 int maxLocks);
00057
00058 int LCCM_CardManager_CheckLockCardRequest(LCCM_CARDMANAGER *cm,
00059 LCCO_CARD *card,
00060 GWEN_TYPE_UINT32 clid);
00061
00062 int LCCM_CardManager_UnlockCard(LCCM_CARDMANAGER *cm,
00063 LCCO_CARD *card,
00064 GWEN_TYPE_UINT32 clid);
00065
00066 int LCCM_CardManager_SetCardAdTime(LCCM_CARDMANAGER *cm,
00067 LCCO_CARD *card,
00068 time_t t);
00069
00070 int LCCM_CardManager_CheckAccess(LCCM_CARDMANAGER *cm,
00071 LCCO_CARD *card,
00072 GWEN_TYPE_UINT32 clid);
00073
00077 int LCCM_CardManager_Work(LCCM_CARDMANAGER *cm);
00078
00079
00080 void LCCM_CardManager_DumpState(const LCCM_CARDMANAGER *cm);
00081
00082
00083 #endif
00084