xml.h

Go to the documentation of this file.
00001 
00002 
00003 
00020 
00021 
00022 
00023 
00024 #ifndef XML_H
00025 #define XML_H
00026 
00028 // Defines
00030 
00031 #ifdef XML_C
00032     #define PROTO
00033 #else
00034     #define PROTO extern
00035 #endif
00036 
00037 #define XML_CONFIG_HANDLE   0
00038 #define XML_RR_HANDLE       1
00039 
00040 
00042 // Typedefs
00044 
00045 // External states of the XML state machine.
00046 typedef enum
00047 {
00048     XMLEXT_NEED_MORE_DATA = 0,
00049     XMLEXT_SM_ROOT_FOUND,
00050     XMLEXT_SM_ERROR
00051 } SM_EXTXML;
00052 
00053 typedef enum
00054 {
00055     XML_SEARCHING_START_OF_TAG = 0,
00056     XML_SEARCHING_END_OF_TAG,
00057     XML_SEARCHING_NEXT_TAG,
00058     XML_ROOT_LEAVED,
00059     XML_LEVEL_LEAVED,
00060     XML_READY
00061 } XML_STATES;
00062 
00065 
00066 
00068 // Function prototypes
00070 
00071 PROTO void InitXMLParser(void);
00072 PROTO void InitXMLProcessor(BYTE u8Handle, BYTE u8Socket);
00073 PROTO BOOL bXMLWalkTheTree(BYTE u8Socket);
00074 PROTO XML_STATES eXMLGetState(BYTE u8Handle);
00075 PROTO WORD u16XMLGetProcessedBytes(BYTE u8Handle);
00076 PROTO BOOL bXMLIsLevelLeaved(BYTE u8ProcessorHandle, BYTE u8TreeDepth);
00077 PROTO BOOL bXMLCheckForNode(BYTE u8Handle, BYTE u8TreeDepth, 
00078                                                          ROM char * pNodeName);
00079 BOOL bXMLCheckForNodeWithoutDepth(BYTE u8Handle, ROM char * pNodeName);
00080 
00081 PROTO BOOL bXMLSearchAttribute(BYTE u8Handle, ROM char * pu8Name, 
00082                                       BYTE * pu8Value, BYTE u8ValueBufferSize);
00083 PROTO BOOL bXMLSearchAttributeU16(BYTE u8Handle, ROM char * pu8Name, 
00084                                                                WORD * pu16Val);
00085 
00086 PROTO BOOL bXMLGetNextAttribute(BYTE u8Handle, 
00087                             char * pu8Name, BYTE u8NameBufferSize, 
00088                             char * pu8Value, BYTE u8ValueBufferSize);
00089 
00090 PROTO void XMLPutString(BYTE u8Socket, BYTE * au8String);
00091 PROTO void XMLCopyString(BYTE * au8DestString, BYTE * au8SrcString);
00092 
00096 
00097 // Epilogue
00099 
00100 #undef PROTO
00101 
00102 #endif  // #ifndef XML_H

Generated on Sun Nov 27 20:02:39 2011 for eWicht by  doxygen 1.5.5