30 #ifndef CPL_MINIXML_H_INCLUDED 31 #define CPL_MINIXML_H_INCLUDED 124 const char *pszPath );
126 const char *pszTarget );
129 const char *pszDefault );
132 const char *pszText );
150 const char *pszNameSpace,
156 const char *pszFilename );
163 class CPLXMLTreeCloser {
165 explicit CPLXMLTreeCloser(
CPLXMLNode* data) { the_data_ = data; }
167 ~CPLXMLTreeCloser() {
174 CPLXMLNode* operator->()
const {
return get(); }
CPLXMLNode CPL_DLL * CPLParseXMLFile(const char *pszFilename)
Parse XML file into tree.
Definition: cpl_minixml.cpp:2021
void CPL_DLL CPLAddXMLSibling(CPLXMLNode *psOlderSibling, CPLXMLNode *psNewSibling)
Add new sibling.
Definition: cpl_minixml.cpp:1701
Definition: cpl_minixml.h:46
Definition: cpl_minixml.h:65
CPLXMLNode CPL_DLL * CPLParseXMLString(const char *)
Parse an XML string into tree form.
Definition: cpl_minixml.cpp:587
Definition: cpl_minixml.h:45
void CPL_DLL CPLCleanXMLElementName(char *)
Make string into safe XML token.
Definition: cpl_minixml.cpp:2129
CPLXMLNode CPL_DLL * CPLSearchXMLNode(CPLXMLNode *poRoot, const char *pszTarget)
Search for a node in document.
Definition: cpl_minixml.cpp:1358
void CPL_DLL CPLStripXMLNamespace(CPLXMLNode *psRoot, const char *pszNameSpace, int bRecurse)
Strip indicated namespaces.
Definition: cpl_minixml.cpp:1954
void CPL_DLL CPLAddXMLAttributeAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an attribute and text value.
Definition: cpl_minixml.cpp:1783
int CPL_DLL CPLSerializeXMLTreeToFile(const CPLXMLNode *psTree, const char *pszFilename)
Write document tree to a file.
Definition: cpl_minixml.cpp:2059
const char CPL_DLL * CPLGetXMLValue(CPLXMLNode *poRoot, const char *pszPath, const char *pszDefault)
Fetch element/attribute value.
Definition: cpl_minixml.cpp:1539
CPLXMLNodeType eType
Node type.
Definition: cpl_minixml.h:73
struct CPLXMLNode CPLXMLNode
int CPL_DLL CPLSetXMLValue(CPLXMLNode *psRoot, const char *pszPath, const char *pszValue)
Set element value by path.
Definition: cpl_minixml.cpp:1862
Definition: cpl_minixml.h:49
Definition: cpl_minixml.h:47
struct CPLXMLNode * psNext
Next sibling.
Definition: cpl_minixml.h:105
void CPL_DLL CPLAddXMLChild(CPLXMLNode *psParent, CPLXMLNode *psChild)
Add child node to parent.
Definition: cpl_minixml.cpp:1601
CPLXMLNodeType
Definition: cpl_minixml.h:43
int CPL_DLL CPLRemoveXMLChild(CPLXMLNode *psParent, CPLXMLNode *psChild)
Remove child node from parent.
Definition: cpl_minixml.cpp:1657
Definition: cpl_minixml.h:48
void CPL_DLL CPLDestroyXMLNode(CPLXMLNode *)
Destroy a tree.
Definition: cpl_minixml.cpp:1302
CPLXMLNode CPL_DLL * CPLCreateXMLElementAndValue(CPLXMLNode *psParent, const char *pszName, const char *pszValue)
Create an element and text value.
Definition: cpl_minixml.cpp:1744
char * pszValue
Node value.
Definition: cpl_minixml.h:96
CPLXMLNode CPL_DLL * CPLGetXMLNode(CPLXMLNode *poRoot, const char *pszPath)
Find node by path.
Definition: cpl_minixml.cpp:1447
struct CPLXMLNode * psChild
Child node.
Definition: cpl_minixml.h:117
char CPL_DLL * CPLSerializeXMLTree(const CPLXMLNode *psNode)
Convert tree into string document.
Definition: cpl_minixml.cpp:1145
CPLXMLNode CPL_DLL * CPLCloneXMLTree(CPLXMLNode *psTree)
Copy tree.
Definition: cpl_minixml.cpp:1807
CPLXMLNode CPL_DLL * CPLCreateXMLNode(CPLXMLNode *poParent, CPLXMLNodeType eType, const char *pszText)
Create an document tree item.
Definition: cpl_minixml.cpp:1191