libcsem
0.2
|
00001 /* 00002 * $Id: csem__micro__stream_8h_source.html,v 1.1 2013-04-22 20:16:23 hitoshi Exp $ 00003 * See Copyright for the status of this software. 00004 * uchida@w3.org 00005 */ 00006 #ifndef CSEM_MICRO_STREAM_H 00007 #define CSEM_MICRO_STREAM_H 00008 00009 #ifdef __cplusplus 00010 #define CSEM_NS_C_BEGIN extern "C" { 00011 #define CSEM_NS_C_END } 00012 #else 00013 #define CSEM_NS_C_BEGIN 00014 #define CSEM_NS_C_END 00015 #endif 00016 00017 CSEM_NS_C_BEGIN 00018 00019 #include "csem_list.h" 00020 #include "csem_url.h" 00021 00025 typedef struct CSEM_Micro_Handlers CSEM_Micro_Handlers; 00036 typedef CSEM_Bool (*CSEM_Micro_ItemStart)(const void *userdata, 00037 const CSEM_Url *id, const CSEM_List *types, const CSEM_List *refs); 00042 typedef void (*CSEM_Micro_ItemEnd)(const void *userdata); 00052 typedef CSEM_Bool (*CSEM_Micro_PropStart)(const void *userdata, const char *propName, CSEM_Bool hasUrlValue); 00060 typedef void (*CSEM_Micro_PropValue)(const void *userdata, const char *value, int len); 00065 typedef void (*CSEM_Micro_PropEnd)(const void *userdata); 00074 typedef CSEM_Bool (*CSEM_Micro_IdStart)(const void *userdata, const char *id); 00079 typedef void (*CSEM_Micro_IdEnd)(const void *userdata); 00085 CSEM_Error CSEM_Micro_CreateHandler(CSEM_Micro_Handlers **handler); 00090 void CSEM_Micro_DisposeHandler(CSEM_Micro_Handlers *handler); 00096 void CSEM_Micro_SetItemStart(CSEM_Micro_Handlers *handler, CSEM_Micro_ItemStart startScope); 00102 void CSEM_Micro_SetItemEnd(CSEM_Micro_Handlers *handler, CSEM_Micro_ItemEnd endScope); 00108 void CSEM_Micro_SetPropStart(CSEM_Micro_Handlers *handler, CSEM_Micro_PropStart startProp); 00114 void CSEM_Micro_SetPropValue(CSEM_Micro_Handlers *handler, CSEM_Micro_PropValue propValue); 00120 void CSEM_Micro_SetPropEnd(CSEM_Micro_Handlers *handler, CSEM_Micro_PropEnd endProp); 00126 void CSEM_Micro_SetIdStart(CSEM_Micro_Handlers *handler, CSEM_Micro_IdStart startId); 00132 void CSEM_Micro_SetIdEnd(CSEM_Micro_Handlers *handler, CSEM_Micro_IdEnd endId); 00133 00134 CSEM_NS_C_END 00135 00136 #endif /* CSEM_MICRO_STREAM_H */