00001
00004
00005
00006
00007
00008
00009 #ifndef CARD_PARSER_H
00010 #define CARD_PARSER_H
00011
00012 #ifdef __cplusplus
00013 extern "C"
00014 {
00015 #endif
00016
00017 #define CARD_PARSER_VER_MAJOR 0
00018 #define CARD_PARSER_VER_MINOR 9
00019 #define CARD_PARSER_VER "0.9"
00020
00021 typedef char CARD_Char;
00022 typedef void *CARD_Parser;
00023
00024
00025 const char *CARD_ParserVersion();
00026
00027
00028 CARD_Parser CARD_ParserCreate(CARD_Char *encoding);
00029 void CARD_ParserFree(CARD_Parser p);
00030 int CARD_Parse(CARD_Parser p, const char *s, int len, int isFinal);
00031
00032
00033 void CARD_SetUserData(CARD_Parser p, void *userData);
00034 void *CARD_GetUserData(CARD_Parser p);
00035
00036
00047 typedef void (*CARD_PropHandler)(void *userData, const CARD_Char *propname, const CARD_Char **params);
00048
00056 typedef void (*CARD_DataHandler)(void *userData, const CARD_Char *data, int len);
00057
00058
00059 void CARD_SetPropHandler(CARD_Parser p, CARD_PropHandler cardProp);
00060 void CARD_SetDataHandler(CARD_Parser p, CARD_DataHandler cardData);
00061
00062 #ifdef __cplusplus
00063 }
00064 #endif
00065
00066
00067 #endif