26 #ifndef __TERRALIB_XML_INTERNAL_READER_H
27 #define __TERRALIB_XML_INTERNAL_READER_H
37 #include <boost/cstdint.hpp>
38 #include <boost/noncopyable.hpp>
72 virtual void setDoNamespaces(
bool d) = 0;
83 virtual void setDoSchema(
bool d) = 0;
92 virtual void setValidationScheme(
bool d) = 0;
101 virtual void setUseCachedGrammarInParse(
bool d) = 0;
110 virtual void setCacheGrammarFromParse(
bool d) = 0;
119 virtual void setIgnoreWhiteSpaces(
bool d) = 0;
130 virtual void read(
const std::string& fileURI) = 0;
139 virtual bool next() = 0;
146 virtual NodeType getNodeType()
const = 0;
153 virtual std::string getElementURI()
const = 0;
160 virtual std::string getElementLocalName()
const = 0;
167 virtual std::string getElementQName()
const = 0;
174 virtual std::string getElementValue()
const = 0;
183 virtual boost::int32_t getElementValueAsInt32()
const;
192 virtual double getElementValueAsDouble()
const;
201 virtual bool getElementValueAsBoolean()
const;
217 virtual std::size_t getElementDataLen()
const = 0;
224 virtual bool hasAttrs()
const = 0;
231 virtual std::size_t getNumberOfAttrs()
const = 0;
240 virtual std::string getAttr(
const std::string& name)
const = 0;
249 virtual std::string getAttr(std::size_t i)
const = 0;
260 virtual boost::int32_t getAttrAsInt32(
const std::string& name)
const;
271 virtual boost::int32_t getAttrAsInt32(std::size_t i)
const;
282 virtual boost::uint32_t getAttrAsUInt32(std::size_t i)
const;
293 virtual boost::uint32_t getAttrAsUInt32(
const std::string name)
const;
304 virtual double getAttrAsDouble(
const std::string& name)
const;
315 virtual double getAttrAsDouble(std::size_t i)
const;
324 virtual std::string getAttrLocalName(std::size_t i)
const = 0;
333 virtual std::string getAttrQName(std::size_t i)
const = 0;
342 virtual std::string getAttrURI(std::size_t i)
const = 0;
351 virtual std::size_t getAttrPosition(
const std::string& name)
const = 0;
353 virtual std::size_t getNumberOfNamespaces()
const = 0;
355 virtual void getNamespace(std::size_t i, std::pair<std::string, std::string>& ns)
const = 0;
365 virtual void setInternalBufferSize(
const std::size_t size) = 0;
371 #endif // __TERRALIB_XML_INTERNAL_READER_H
virtual ~Reader()
Virtual destructor.
This class models a XML reader object.
Reader()
Default constructor.
NodeType
The type of node read by XML reader.
Configuration flags for the XML API of TerraLib.
Enumerations of XML module.
#define TEXMLEXPORT
You can use this macro in order to export/import classes and functions from this module.