WL865E4-P  36.07.001
m2mb_xml.h
Go to the documentation of this file.
1 /*===============================================================================================*/
2 /* >>> Copyright (C) Telit Communications S.p.A. Italy All Rights Reserved. <<< */
27 #ifndef _M2MB_XML_H_
28 #define _M2MB_XML_H_
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
49 /*-----------------------------------------------------------------------------------------------*/
50 
55 /*-----------------------------------------------------------------------------------------------*/
56 
57 
58 /* Global declarations ==========================================================================*/
59 
60 
61 /* Global typedefs ==============================================================================*/
62 
70 typedef enum M2MB_XML_OBJ_TYPE
71 {
77 
85 typedef enum M2MB_XML_DATA_TYPE
86 {
125 
133 typedef struct M2MB_XML_NODE
134 {
139 
147 typedef struct M2MB_XML_DATE
148 {
155 
163 typedef struct M2MB_XML_TIME
164 {
171 
179 typedef struct M2MB_XML_DATE_TIME
180 {
190 
198 typedef struct M2MB_XML_DURATION
199 {
207 
208 
216 typedef struct M2MB_XML_STRING
217 {
223 
231 typedef struct M2MB_XML_OBJ
232 {
241 
249 typedef struct M2MB_XML_COMPLEX_INFO
250 {
255 
263 typedef struct M2MB_XML_COMPLEX_OBJ
264 {
268 
269 
270 
271 /*---------------------------------------------------------------------------*/
366 /*---------------------------------------------------------------------------*/
368  UINT8 *user_struct, UINT8 *xml_file_buffer, UINT32 xml_file_buffer_Size,
369  UINT32 *len_of_xml_written );
370 
371 /*---------------------------------------------------------------------------*/
456 /*---------------------------------------------------------------------------*/
457 M2MB_STATUS_T m2mb_xml_decode( UINT8 *parent_start, UINT8* parent_end,
458  M2MB_XML_COMPLEX_OBJ_T *xml_schema, UINT8 *return_struct );
459 
460 /*---------------------------------------------------------------------------*/
500 /*---------------------------------------------------------------------------*/
502  UINT8 *parent_node_start, UINT8 *parent_node_end,UINT8 *tag_end );
503 
504 /*---------------------------------------------------------------------------*/
538 /*---------------------------------------------------------------------------*/
539 UINT8 m2mb_xml_node_occ_get( UINT8 *pTName, UINT8 *pPNStart,
540  UINT8 *pPNEnd );
541 
545 /*-----------------------------------------------------------------------------------------------*/
546 
547 
548 #ifdef __cplusplus
549 }
550 #endif
551 #endif /* _M2MB_XML_H_ */
unsigned char UINT8
Definition: m2mb_types.h:83
struct M2MB_XML_NODE M2MB_XML_NODE_T
Xml node structure.
UINT8 minOffset
Definition: m2mb_xml.h:153
M2MB_XML_OBJ_T obj
Definition: m2mb_xml.h:265
M2MB_XML_COMPLEX_INFO_T complexobj
Definition: m2mb_xml.h:266
enum M2MB_XML_OBJ_TYPE M2MB_XML_OBJ_TYPE_T
Object type supported by the xml.
UINT8 hrOffset
Definition: m2mb_xml.h:168
M2MB_STATUS_T m2mb_xml_node_get(M2MB_XML_NODE_T *child_node, UINT8 *parent_node_start, UINT8 *parent_node_end, UINT8 *tag_end)
Get node API for XML module.
struct M2MB_XML_TIME M2MB_XML_TIME_T
Xml time structure xml.
INT32 M2MB_STATUS_T
Definition: m2mb_status.h:95
UINT8 * pStart
Definition: m2mb_xml.h:136
M2MB_XML_OBJ_TYPE
Object type supported by the xml.
Definition: m2mb_xml.h:70
UINT8 m2mb_xml_node_occ_get(UINT8 *pTName, UINT8 *pPNStart, UINT8 *pPNEnd)
Occurrence of node present API for XML module.
M2MB_XML_DATA_TYPE_T dataType
Definition: m2mb_xml.h:235
struct M2MB_XML_DATE M2MB_XML_DATE_T
XML date structure xml.
struct M2MB_XML_DURATION M2MB_XML_DURATION_T
Xml duration structure.
M2MB_XML_DATA_TYPE
Data type supported by the XML.
Definition: m2mb_xml.h:85
UINT8 minOffset
Definition: m2mb_xml.h:169
UINT16 offset
Definition: m2mb_xml.h:238
Xml duration structure.
Definition: m2mb_xml.h:198
unsigned short UINT16
Definition: m2mb_types.h:84
UINT8 maxObjOcc
Definition: m2mb_xml.h:236
UINT8 * pEnd
Definition: m2mb_xml.h:137
unsigned long int UINT32
Definition: m2mb_types.h:85
struct M2MB_XML_STRING M2MB_XML_STRING_T
Duration structure XML.
struct M2MB_XML_DATE_TIME M2MB_XML_DATE_TIME_T
Xml date & time structure xml.
UINT8 month
Definition: m2mb_xml.h:150
XML date structure xml.
Definition: m2mb_xml.h:147
struct M2MB_XML_COMPLEX_OBJ M2MB_XML_COMPLEX_OBJ_T
Xml complex object structure.
UINT8 * ptr
Definition: m2mb_xml.h:220
UINT8 hrOffset
Definition: m2mb_xml.h:152
M2MB_STATUS_T m2mb_xml_decode(UINT8 *parent_start, UINT8 *parent_end, M2MB_XML_COMPLEX_OBJ_T *xml_schema, UINT8 *return_struct)
Decode API for XML module.
Xml object structure.
Definition: m2mb_xml.h:231
M2MB_STATUS_T m2mb_xml_encode(M2MB_XML_COMPLEX_OBJ_T *xml_schema, UINT8 *user_struct, UINT8 *xml_file_buffer, UINT32 xml_file_buffer_Size, UINT32 *len_of_xml_written)
Encode API for XML module.
Xml date & time structure xml.
Definition: m2mb_xml.h:179
struct M2MB_XML_COMPLEX_INFO M2MB_XML_COMPLEX_INFO_T
XML complex information structure.
Xml node structure.
Definition: m2mb_xml.h:133
UINT8 * pName
Definition: m2mb_xml.h:233
struct M2MB_XML_OBJ M2MB_XML_OBJ_T
Xml object structure.
enum M2MB_XML_DATA_TYPE M2MB_XML_DATA_TYPE_T
Data type supported by the XML.
Xml complex object structure.
Definition: m2mb_xml.h:263
Duration structure XML.
Definition: m2mb_xml.h:216
Xml time structure xml.
Definition: m2mb_xml.h:163
UINT16 year
Definition: m2mb_xml.h:149
UINT8 * pName
Definition: m2mb_xml.h:135
M2MB_XML_OBJ_TYPE_T objType
Definition: m2mb_xml.h:234
XML complex information structure.
Definition: m2mb_xml.h:249
const M2MB_XML_OBJ_T ** pObj
Definition: m2mb_xml.h:253