Note: The parser object returned by XMLReaderFactory is owned by the * calling users, and it's the responsiblity of the users to delete that * parser object, once they no longer need it.
* * @see SAX2XMLReader#SAX2XMLReader */ class SAX2_EXPORT XMLReaderFactory { protected: // really should be private, but that causes compiler warnings. XMLReaderFactory() ; ~XMLReaderFactory() ; public: static SAX2XMLReader * createXMLReader( MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager , XMLGrammarPool* const gramPool = 0 ) ; static SAX2XMLReader * createXMLReader(const XMLCh* className) ; private: // ----------------------------------------------------------------------- // Unimplemented constructors and operators // ----------------------------------------------------------------------- XMLReaderFactory(const XMLReaderFactory&); XMLReaderFactory& operator=(const XMLReaderFactory&); }; inline SAX2XMLReader * XMLReaderFactory::createXMLReader(MemoryManager* const manager , XMLGrammarPool* const gramPool) { return (SAX2XMLReader*)(new (manager) SAX2XMLReaderImpl(manager, gramPool)); } inline SAX2XMLReader * XMLReaderFactory::createXMLReader(const XMLCh *) { throw SAXNotSupportedException(); // unimplemented return 0; } XERCES_CPP_NAMESPACE_END #endif