Mbed port of the Simple Plain Xml parser. See http://code.google.com/p/spxml/ for more details. This library uses less memory and is much better suited to streaming data than TinyXML (doesn\'t use as much C++ features, and especially works without streams). See http://mbed.org/users/hlipka/notebook/xml-parsing/ for usage examples.
Dependents: spxmltest_weather VFD_fontx2_weather weather_LCD_display News_LCD_display ... more
Diff: spcanonxml.hpp
- Revision:
- 0:3fa97f2c0505
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/spcanonxml.hpp Wed Nov 24 20:52:14 2010 +0000 @@ -0,0 +1,40 @@ +/* + * Copyright 2007 Stephen Liu + * LGPL, see http://code.google.com/p/spxml/ + * For license terms, see the file COPYING along with this library. + */ + +#ifndef __spcanonxml_hpp__ +#define __spcanonxml_hpp__ + +class SP_XmlNode; +class SP_XmlStringBuffer; +class SP_XmlDocDeclNode; +class SP_XmlDocTypeNode; + +/// XML Canonical, defined by James Clark. +class SP_CanonXmlBuffer { +public: + SP_CanonXmlBuffer( const SP_XmlNode * node ); + ~SP_CanonXmlBuffer(); + + const char * getBuffer() const; + int getSize() const; + +private: + SP_CanonXmlBuffer( SP_CanonXmlBuffer & ); + SP_CanonXmlBuffer & operator=( SP_CanonXmlBuffer & ); + + static void dump( const SP_XmlNode * node, + SP_XmlStringBuffer * buffer ); + static void dumpElement( const SP_XmlNode * node, + SP_XmlStringBuffer * buffer ); + + static void canonEncode( const char * value, + SP_XmlStringBuffer * buffer ); + + SP_XmlStringBuffer * mBuffer; +}; + +#endif +