Go to the documentation of this file.
30 #ifndef CPL_MINIXML_H_INCLUDED
31 #define CPL_MINIXML_H_INCLUDED
124 const char *pszPath );
125 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
130 const char *pszPath ) {
138 const char *pszTarget );
139 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
144 const char *pszTarget ) {
153 const char *pszDefault );
156 const char *pszText );
174 const char *pszNameSpace,
180 const char *pszFilename );
184 #if defined(__cplusplus) && !defined(CPL_SUPRESS_CPLUSPLUS)
193 struct CPLXMLTreeCloserDeleter
207 std::unique_ptr<
CPLXMLNode, CPLXMLTreeCloserDeleter>(data) {}
@ CXT_Element
Definition: cpl_minixml.h:46
const char * CPLGetLastErrorMsg(void)
Definition: cpl_error.cpp:847
unsigned char GByte
Definition: cpl_port.h:213
#define CPLES_XML_BUT_QUOTES
Definition: cpl_string.h:177
int CPLRemoveXMLChild(CPLXMLNode *psParent, CPLXMLNode *psChild)
Remove child node from parent.
Definition: cpl_minixml.cpp:1763
char * CPLEscapeString(const char *pszString, int nLength, int nScheme)
Definition: cpl_string.cpp:2032
CPLXMLNode * CPLParseXMLFile(const char *pszFilename)
Parse XML file into tree.
Definition: cpl_minixml.cpp:2131
int CPLSetXMLValue(CPLXMLNode *psRoot, const char *pszPath, const char *pszValue)
Set element value by path.
Definition: cpl_minixml.cpp:1969
void CPLCleanXMLElementName(char *)
Make string into safe XML token.
Definition: cpl_minixml.cpp:2240
@ CXT_Comment
Definition: cpl_minixml.h:49
void * CPLCalloc(size_t, size_t)
Definition: cpl_conv.cpp:138
void * VSIRealloc(void *, size_t)
Definition: cpl_vsisimple.cpp:677
CPLXMLNode * CPLSearchXMLNode(CPLXMLNode *poRoot, const char *pszTarget)
Search for a node in document.
Definition: cpl_minixml.cpp:1468
Definition: cpl_minixml.cpp:77
Convenient string class based on std::string.
Definition: cpl_string.h:336
CPLXMLNode * CPLParseXMLString(const char *)
Parse an XML string into tree form.
Definition: cpl_minixml.cpp:614
size_t VSIFWriteL(const void *, size_t, size_t, VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Write bytes to file.
Definition: cpl_vsil.cpp:1260
@ CXT_Text
Definition: cpl_minixml.h:47
void * CPLRealloc(void *, size_t)
Definition: cpl_conv.cpp:225
CPLXMLNode * getDocumentElement()
Definition: cpl_minixml.cpp:2263
Definition: cpl_minixml.h:66
#define EQUAL(a, b)
Definition: cpl_port.h:559
int VSIFCloseL(VSILFILE *) EXPERIMENTAL_CPL_WARN_UNUSED_RESULT
Close file.
Definition: cpl_vsil.cpp:928
CPLXMLTreeCloser(CPLXMLNode *data)
Definition: cpl_minixml.h:206
CPLXMLNodeType
Definition: cpl_minixml.h:44
#define CPLES_XML
Definition: cpl_string.h:169
#define CPLAssert(expr)
Definition: cpl_error.h:182
@ CXT_Literal
Definition: cpl_minixml.h:50
#define CPL_C_START
Definition: cpl_port.h:335
CPLXMLNode * CPLCloneXMLTree(const CPLXMLNode *psTree)
Copy tree.
Definition: cpl_minixml.cpp:1914
char * CPLSerializeXMLTree(const CPLXMLNode *psNode)
Convert tree into string document.
Definition: cpl_minixml.cpp:1252
#define CPLE_OutOfMemory
Definition: cpl_error.h:101
void CPLAddXMLAttributeAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an attribute and text value.
Definition: cpl_minixml.cpp:1890
bool CPLTestBool(const char *pszValue)
Definition: cpl_string.cpp:1526
Definition: cpl_minixml.h:202
CPLXMLNode * CPLGetXMLNode(CPLXMLNode *poRoot, const char *pszPath)
Find node by path.
Definition: cpl_minixml.cpp:1557
struct CPLXMLNode CPLXMLNode
int CPLSerializeXMLTreeToFile(const CPLXMLNode *psTree, const char *pszFilename)
Write document tree to a file.
Definition: cpl_minixml.cpp:2169
CPLErrorNum CPLGetLastErrorNo(void)
Definition: cpl_error.cpp:799
int CPLErrorNum
Definition: cpl_error.h:94
#define CPLE_OpenFailed
Definition: cpl_error.h:105
CPLXMLNodeType eType
Node type.
Definition: cpl_minixml.h:74
void CPLDestroyXMLNode(CPLXMLNode *)
Destroy a tree.
Definition: cpl_minixml.cpp:1412
#define CPL_C_END
Definition: cpl_port.h:337
void CPLAddXMLChild(CPLXMLNode *psParent, CPLXMLNode *psChild)
Add child node to parent.
Definition: cpl_minixml.cpp:1707
void CPLErrorReset(void)
Definition: cpl_error.cpp:710
const char * CPLGetXMLValue(const CPLXMLNode *poRoot, const char *pszPath, const char *pszDefault)
Fetch element/attribute value.
Definition: cpl_minixml.cpp:1645
void CPLError(CPLErr eErrClass, CPLErrorNum err_no, const char *fmt,...)
Definition: cpl_error.cpp:232
GUIntBig vsi_l_offset
Definition: cpl_vsi.h:139
void VSIFree(void *)
Definition: cpl_vsisimple.cpp:823
char ** CSLTokenizeStringComplex(const char *pszString, const char *pszDelimiter, int bHonourStrings, int bAllowEmptyTokens)
Definition: cpl_string.cpp:769
#define CPLE_NotSupported
Definition: cpl_error.h:109
char * VSIStrdup(const char *)
Definition: cpl_vsisimple.cpp:991
char * CPLUnescapeString(const char *pszString, int *pnLength, int nScheme)
Definition: cpl_string.cpp:2243
void * VSICalloc(size_t, size_t)
Definition: cpl_vsisimple.cpp:440
@ CXT_Attribute
Definition: cpl_minixml.h:48
CPLXMLNode * CPLCreateXMLNode(CPLXMLNode *poParent, CPLXMLNodeType eType, const char *pszText)
Create an document tree item.
Definition: cpl_minixml.cpp:1297
void CPLStripXMLNamespace(CPLXMLNode *psRoot, const char *pszNameSpace, int bRecurse)
Strip indicated namespaces.
Definition: cpl_minixml.cpp:2061
void * VSIMalloc(size_t)
Definition: cpl_vsisimple.cpp:554
void CSLDestroy(char **papszStrList)
Definition: cpl_string.cpp:200
struct CPLXMLNode * psNext
Next sibling.
Definition: cpl_minixml.h:106
#define EQUALN(a, b, n)
Definition: cpl_port.h:557
VSILFILE * VSIFOpenL(const char *, const char *)
Open file.
Definition: cpl_vsil.cpp:818
void CPLErrorSetState(CPLErr eErrClass, CPLErrorNum err_no, const char *pszMsg)
Definition: cpl_error.cpp:745
CPLErr
Definition: cpl_error.h:52
CPLXMLNode * CPLCreateXMLElementAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an element and text value.
Definition: cpl_minixml.cpp:1851
char * CPLStrdup(const char *)
Definition: cpl_conv.cpp:293
CPLErr CPLGetLastErrorType(void)
Definition: cpl_error.cpp:823
char * pszValue
Node value.
Definition: cpl_minixml.h:97
struct CPLXMLNode * psChild
Child node.
Definition: cpl_minixml.h:118
void CPLAddXMLSibling(CPLXMLNode *psOlderSibling, CPLXMLNode *psNewSibling)
Add new sibling.
Definition: cpl_minixml.cpp:1808
int VSIIngestFile(VSILFILE *fp, const char *pszFilename, GByte **ppabyRet, vsi_l_offset *pnSize, GIntBig nMaxSize)
Ingest a file into memory.
Definition: cpl_vsil.cpp:1500
Definition: cpl_minixml.cpp:71
#define CPLE_FileIO
Definition: cpl_error.h:103
#define CPLFree
Definition: cpl_conv.h:81
const char * CPLGetConfigOption(const char *, const char *)
Definition: cpl_conv.cpp:1690
FILE VSILFILE
Definition: cpl_vsi.h:155
#define STARTS_WITH_CI(a, b)
Definition: cpl_port.h:570
#define CPLE_AppDefined
Definition: cpl_error.h:99
Generated for GDAL by
1.8.17.