ReactOS 0.4.16-dev-282-g4d0a26d
xmlstorage.h File Reference
#include <wchar.h>
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
#include <fstream>
#include <sstream>
#include <string>
#include <stack>
#include <list>
#include <map>
Include dependency graph for xmlstorage.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  XMLStorage::XS_String
 string class for TCHAR strings More...
 
struct  XMLStorage::tifstream
 
struct  XMLStorage::tofstream
 
struct  XMLStorage::XMLError
 XML Error with message and location. More...
 
struct  XMLStorage::XMLErrorList
 list of XMLError entries More...
 
struct  XMLStorage::StyleSheet
 XML Stylesheet entry. More...
 
struct  XMLStorage::StyleSheetList
 list of StyleSheet entries More...
 
struct  XMLStorage::DocType
 XML document type description. More...
 
struct  XMLStorage::XMLFormat
 Management of XML file headers and formating. More...
 
struct  XMLStorage::XPathElement
 
struct  XMLStorage::XPath
 
struct  XMLStorage::XMLNode
 in memory representation of an XML node More...
 
struct  XMLStorage::XMLNode::AttributeMap
 map of XML node attributes More...
 
struct  XMLStorage::XMLNode::Children
 internal children node list More...
 
struct  XMLStorage::XMLChildrenFilter
 iterator access to children nodes with name filtering More...
 
struct  XMLStorage::XMLChildrenFilter::iterator
 internal iterator class More...
 
struct  XMLStorage::const_XMLChildrenFilter
 read only iterator access to children nodes with name filtering More...
 
struct  XMLStorage::const_XMLChildrenFilter::const_iterator
 internal iterator class More...
 
struct  XMLStorage::XMLPos
 iterator for XML trees More...
 
struct  XMLStorage::const_XMLPos
 iterator for XML trees More...
 
struct  XMLStorage::XMLBool
 type converter for boolean data More...
 
struct  XMLStorage::XMLBoolRef
 type converter for boolean data with write access More...
 
struct  XMLStorage::XMLInt
 type converter for integer data More...
 
struct  XMLStorage::XMLIntRef
 type converter for integer data with write access More...
 
struct  XMLStorage::XMLDouble
 type converter for numeric data More...
 
struct  XMLStorage::XMLDoubleRef
 type converter for numeric data with write access More...
 
struct  XMLStorage::XMLString
 type converter for string data More...
 
struct  XMLStorage::XMLStringRef
 type converter for string data with write access More...
 
struct  XMLStorage::XMLProperty
 a key/value pair for property data access More...
 
struct  XMLStorage::XMLPropertyReader
 utility class to read property settings from a XML tree More...
 
struct  XMLStorage::XMLPropertyReader::const_iterator
 internal iterator class More...
 
struct  XMLStorage::XMLReaderBase
 XML reader base class. More...
 
struct  XMLStorage::XMLReader
 XML file reader. More...
 
struct  XMLStorage::XMLDoc
 XML document holder. More...
 
struct  XMLStorage::XMLMessage
 XML message wrapper. More...
 
struct  XMLStorage::XMLMessageFromString
 helper structure to read XML messages from strings More...
 
struct  XMLStorage::XMLMessageReader
 Reader for XML Messages. More...
 
struct  XMLStorage::XMLWriter
 on the fly XML writer More...
 
struct  XMLStorage::XMLWriter::StackEntry
 container for XMLWriter state information More...
 

Namespaces

namespace  XMLStorage
 

Macros

#define XS_STRING_UTF8
 
#define TEXT(x)   x
 
#define _ttoi   atoi
 
#define _tfopen   fopen
 
#define _tcstod   strtod
 
#define _tcslen   strlen
 
#define _tcsstr   strstr
 
#define _snprintf   snprintf
 
#define _sntprintf   snprintf
 
#define _vsnprintf   vsnprintf
 
#define _vsntprintf   vsnprintf
 
#define _stricmp   strcasecmp
 
#define _tcsicmp   strcasecmp
 
#define strnicmp   strncasecmp
 
#define _tcsnicmp   strncasecmp
 
#define BUFFER_LEN   2048
 
#define XS_CHAR   char
 
#define XS_TEXT(x)   x
 
#define LPXSSTR   LPSTR
 
#define LPCXSSTR   LPCSTR
 
#define XS_cmp   strcmp
 
#define XS_icmp   _stricmp
 
#define XS_ncmp   strncmp
 
#define XS_nicmp   strnicmp
 
#define XS_toi   atoi
 
#define XS_tod   strtod
 
#define XS_len   strlen
 
#define XS_snprintf   _snprintf
 
#define XS_vsnprintf   _vsnprintf
 
#define XS_strstr   strstr
 
#define COUNTOF(b)   (sizeof(b)/sizeof(b[0]))
 
#define XS_EMPTY_STR   XS_TEXT("")
 
#define XS_TRUE_STR   XS_TEXT("true")
 
#define XS_FALSE_STR   XS_TEXT("false")
 
#define XS_INTFMT_STR   XS_TEXT("%d")
 
#define XS_FLOATFMT_STR   XS_TEXT("%f")
 
#define XS_KEY_STR   XS_TEXT("key")
 
#define XS_VALUE_STR   XS_TEXT("value")
 
#define XS_PROPERTY_STR   XS_TEXT("property")
 
#define XS_EMPTY   XS_EMPTY_STR
 
#define XS_TRUE   XS_TRUE_STR
 
#define XS_FALSE   XS_FALSE_STR
 
#define XS_INTFMT   XS_INTFMT_STR
 
#define XS_FLOATFMT   XS_FLOATFMT_STR
 
#define CDATA_START   "<![CDATA["
 
#define CDATA_END   "]]>"
 
#define XML_INDENT_SPACE   " "
 
#define _XMLSTORAGE_H
 

Typedefs

typedef char CHAR
 
typedef __wchar_t WCHAR
 
typedef unsigned char UCHAR
 
typedef charLPSTR
 
typedef const charLPCSTR
 
typedef WCHARLPWSTR
 
typedef const WCHARLPCWSTR
 
typedef char TCHAR
 
typedef unsigned char _TUCHAR
 
typedef CHARPTSTR
 
typedef CHARLPTSTR
 
typedef const CHARLPCTSTR
 
typedef std::ostringstream XMLStorage::fast_ostringstream
 

Enumerations

enum  XMLStorage::PRETTY_FLAGS { XMLStorage::PRETTY_PLAIN = 0 , XMLStorage::PRETTY_LINEFEED = 1 , XMLStorage::PRETTY_INDENT = 2 }
 
enum  XMLStorage::WRITE_MODE { XMLStorage::FORMAT_PLAIN , XMLStorage::FORMAT_SMART , XMLStorage::FORMAT_ORIGINAL , XMLStorage::FORMAT_PRETTY }
 

Functions

const charXMLStorage::get_xmlsym_end_utf8 (const char *p)
 
std::string XMLStorage::EncodeXMLString (const XS_String &str, bool cdata)
 encode XML string literals
 
XS_String XMLStorage::DecodeXMLString (const std::string &str)
 decode XML string literals
 
template<typename T >
void XMLStorage::read_option (T &var, const_XMLPos &cfg, LPCXSSTR key)
 
template<>
void XMLStorage::read_option (int &var, const_XMLPos &cfg, LPCXSSTR key)
 

Detailed Description

XMLStorage header file

Definition in file xmlstorage.h.

Macro Definition Documentation

◆ _snprintf

#define _snprintf   snprintf

Definition at line 200 of file xmlstorage.h.

◆ _sntprintf

#define _sntprintf   snprintf

Definition at line 201 of file xmlstorage.h.

◆ _stricmp

#define _stricmp   strcasecmp

Definition at line 204 of file xmlstorage.h.

◆ _tcsicmp

#define _tcsicmp   strcasecmp

Definition at line 205 of file xmlstorage.h.

◆ _tcslen

#define _tcslen   strlen

Definition at line 198 of file xmlstorage.h.

◆ _tcsnicmp

#define _tcsnicmp   strncasecmp

Definition at line 207 of file xmlstorage.h.

◆ _tcsstr

#define _tcsstr   strstr

Definition at line 199 of file xmlstorage.h.

◆ _tcstod

#define _tcstod   strtod

Definition at line 197 of file xmlstorage.h.

◆ _tfopen

#define _tfopen   fopen

Definition at line 196 of file xmlstorage.h.

◆ _ttoi

#define _ttoi   atoi

Definition at line 195 of file xmlstorage.h.

◆ _vsnprintf

#define _vsnprintf   vsnprintf

Definition at line 202 of file xmlstorage.h.

◆ _vsntprintf

#define _vsntprintf   vsnprintf

Definition at line 203 of file xmlstorage.h.

◆ _XMLSTORAGE_H

#define _XMLSTORAGE_H

Definition at line 2997 of file xmlstorage.h.

◆ BUFFER_LEN

#define BUFFER_LEN   2048

Definition at line 226 of file xmlstorage.h.

◆ CDATA_END

#define CDATA_END   "]]>"

Definition at line 436 of file xmlstorage.h.

◆ CDATA_START

#define CDATA_START   "<![CDATA["

Definition at line 435 of file xmlstorage.h.

◆ COUNTOF

#define COUNTOF (   b)    (sizeof(b)/sizeof(b[0]))

Definition at line 271 of file xmlstorage.h.

◆ LPCXSSTR

#define LPCXSSTR   LPCSTR

Definition at line 239 of file xmlstorage.h.

◆ LPXSSTR

#define LPXSSTR   LPSTR

Definition at line 238 of file xmlstorage.h.

◆ strnicmp

#define strnicmp   strncasecmp

Definition at line 206 of file xmlstorage.h.

◆ TEXT

#define TEXT (   x)    x

Definition at line 188 of file xmlstorage.h.

◆ XML_INDENT_SPACE

#define XML_INDENT_SPACE   " "

Definition at line 617 of file xmlstorage.h.

◆ XS_CHAR

#define XS_CHAR   char

Definition at line 236 of file xmlstorage.h.

◆ XS_cmp

#define XS_cmp   strcmp

Definition at line 240 of file xmlstorage.h.

◆ XS_EMPTY

#define XS_EMPTY   XS_EMPTY_STR

Definition at line 424 of file xmlstorage.h.

◆ XS_EMPTY_STR

#define XS_EMPTY_STR   XS_TEXT("")

Definition at line 406 of file xmlstorage.h.

◆ XS_FALSE

#define XS_FALSE   XS_FALSE_STR

Definition at line 426 of file xmlstorage.h.

◆ XS_FALSE_STR

#define XS_FALSE_STR   XS_TEXT("false")

Definition at line 408 of file xmlstorage.h.

◆ XS_FLOATFMT

#define XS_FLOATFMT   XS_FLOATFMT_STR

Definition at line 428 of file xmlstorage.h.

◆ XS_FLOATFMT_STR

#define XS_FLOATFMT_STR   XS_TEXT("%f")

Definition at line 410 of file xmlstorage.h.

◆ XS_icmp

#define XS_icmp   _stricmp

Definition at line 241 of file xmlstorage.h.

◆ XS_INTFMT

#define XS_INTFMT   XS_INTFMT_STR

Definition at line 427 of file xmlstorage.h.

◆ XS_INTFMT_STR

#define XS_INTFMT_STR   XS_TEXT("%d")

Definition at line 409 of file xmlstorage.h.

◆ XS_KEY_STR

#define XS_KEY_STR   XS_TEXT("key")

Definition at line 412 of file xmlstorage.h.

◆ XS_len

#define XS_len   strlen

Definition at line 246 of file xmlstorage.h.

◆ XS_ncmp

#define XS_ncmp   strncmp

Definition at line 242 of file xmlstorage.h.

◆ XS_nicmp

#define XS_nicmp   strnicmp

Definition at line 243 of file xmlstorage.h.

◆ XS_PROPERTY_STR

#define XS_PROPERTY_STR   XS_TEXT("property")

Definition at line 414 of file xmlstorage.h.

◆ XS_snprintf

#define XS_snprintf   _snprintf

Definition at line 247 of file xmlstorage.h.

◆ XS_STRING_UTF8

#define XS_STRING_UTF8

Definition at line 58 of file xmlstorage.h.

◆ XS_strstr

#define XS_strstr   strstr

Definition at line 249 of file xmlstorage.h.

◆ XS_TEXT

#define XS_TEXT (   x)    x

Definition at line 237 of file xmlstorage.h.

◆ XS_tod

#define XS_tod   strtod

Definition at line 245 of file xmlstorage.h.

◆ XS_toi

#define XS_toi   atoi

Definition at line 244 of file xmlstorage.h.

◆ XS_TRUE

#define XS_TRUE   XS_TRUE_STR

Definition at line 425 of file xmlstorage.h.

◆ XS_TRUE_STR

#define XS_TRUE_STR   XS_TEXT("true")

Definition at line 407 of file xmlstorage.h.

◆ XS_VALUE_STR

#define XS_VALUE_STR   XS_TEXT("value")

Definition at line 413 of file xmlstorage.h.

◆ XS_vsnprintf

#define XS_vsnprintf   _vsnprintf

Definition at line 248 of file xmlstorage.h.

Typedef Documentation

◆ _TUCHAR

Definition at line 190 of file xmlstorage.h.

◆ CHAR

typedef char CHAR

Definition at line 175 of file xmlstorage.h.

◆ LPCSTR

static LPCSTR

Definition at line 183 of file xmlstorage.h.

◆ LPCTSTR

typedef const CHAR* LPCTSTR

Definition at line 193 of file xmlstorage.h.

◆ LPCWSTR

Definition at line 185 of file xmlstorage.h.

◆ LPSTR

typedef LPSTR

Definition at line 182 of file xmlstorage.h.

◆ LPTSTR

typedef CHAR* LPTSTR

Definition at line 192 of file xmlstorage.h.

◆ LPWSTR

static LPWSTR

Definition at line 184 of file xmlstorage.h.

◆ PTSTR

typedef CHAR* PTSTR

Definition at line 191 of file xmlstorage.h.

◆ TCHAR

typedef char TCHAR

Definition at line 189 of file xmlstorage.h.

◆ UCHAR

typedef unsigned char UCHAR

Definition at line 181 of file xmlstorage.h.

◆ WCHAR

static static static WCHAR

Definition at line 180 of file xmlstorage.h.