00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef CHIPCARD_CLIENT_CARDCONTEXT_L_H
00015 #define CHIPCARD_CLIENT_CARDCONTEXT_L_H
00016
00017 typedef struct LC_CARDCONTEXT LC_CARDCONTEXT;
00018
00019 #include "cardmgr_l.h"
00020
00021 #include <gwenhywfar/misc.h>
00022 #include <gwenhywfar/xml.h>
00023 #include <gwenhywfar/db.h>
00024 #include <gwenhywfar/buffer.h>
00025 #include <gwenhywfar/inherit.h>
00026
00027 GWEN_LIST_FUNCTION_DEFS(LC_CARDCONTEXT, LC_CardContext)
00028 GWEN_INHERIT_FUNCTION_DEFS(LC_CARDCONTEXT)
00029
00030
00031 LC_CARDCONTEXT *LC_CardContext_new(LC_CARDMGR *mgr);
00032 void LC_CardContext_free(LC_CARDCONTEXT *ctx);
00033
00034
00035 LC_CARDMGR *LC_CardContext_GetManager(const LC_CARDCONTEXT *ctx);
00036
00037
00038 LC_CARDMGR_RESULT LC_CardContext_Translate(LC_CARDCONTEXT *ctx,
00039 GWEN_DB_NODE *dbReq);
00040
00041 LC_CARDMGR_RESULT LC_CardContext_CheckResponse(LC_CARDCONTEXT *ctx,
00042 GWEN_DB_NODE *dbReq,
00043 GWEN_DB_NODE *dbServerRsp);
00044
00045
00046 GWEN_XMLNODE *LC_CardContext_GetAppNode(const LC_CARDCONTEXT *ctx);
00047 void LC_CardContext_SetAppNode(LC_CARDCONTEXT *ctx,
00048 GWEN_XMLNODE *n);
00049
00050 GWEN_XMLNODE *LC_CardContext_GetDfNode(const LC_CARDCONTEXT *ctx);
00051 void LC_CardContext_SetDfNode(LC_CARDCONTEXT *ctx,
00052 GWEN_XMLNODE *n);
00053 GWEN_XMLNODE *LC_CardContext_GetEfNode(const LC_CARDCONTEXT *ctx);
00054 void LC_CardContext_SetEfNode(LC_CARDCONTEXT *ctx,
00055 GWEN_XMLNODE *n);
00056
00057 int LC_CardContext_GetRecordNumber(LC_CARDCONTEXT *ctx,
00058 const char *recName);
00059
00060 int LC_CardContext_ParseRecord(LC_CARDCONTEXT *ctx,
00061 int recNum,
00062 GWEN_BUFFER *buf,
00063 GWEN_DB_NODE *dbRecord);
00064 int LC_CardContext_CreateRecord(LC_CARDCONTEXT *ctx,
00065 int recNum,
00066 GWEN_BUFFER *buf,
00067 GWEN_DB_NODE *dbRecord);
00068
00069 int LC_CardContext_ParseData(LC_CARDCONTEXT *ctx,
00070 const char *format,
00071 GWEN_BUFFER *buf,
00072 GWEN_DB_NODE *dbData);
00073 int LC_CardContext_CreateData(LC_CARDCONTEXT *ctx,
00074 const char *format,
00075 GWEN_BUFFER *buf,
00076 GWEN_DB_NODE *dbData);
00077
00078
00079
00080
00081 #endif
00082
00083
00084