28 #include <libxml/tree.h>
29 #include <libxml/parserInternals.h>
37 TDOMParser::TDOMParser() : fTXMLDoc(0)
44 TDOMParser::~TDOMParser()
52 void TDOMParser::ReleaseUnderlying()
61 TXMLParser::ReleaseUnderlying();
70 Int_t TDOMParser::ParseFile(
const char *filename)
74 fContext = xmlCreateFileParserCtxt(filename);
83 if (!fContext->directory) {
84 const char *dir = xmlParserGetDirectory(filename);
85 fContext->directory = (
char *)xmlStrdup((
const xmlChar *)dir);
88 return ParseContext();
94 Int_t TDOMParser::ParseBuffer(
const char *buffer, Int_t len)
98 fContext = xmlCreateMemoryParserCtxt(buffer, len);
107 return ParseContext();
117 Int_t TDOMParser::ParseContext()
119 xmlParseDocument(fContext);
121 if (!fContext->myDoc) {
126 if (!fContext->wellFormed) {
131 if (!fContext->valid) {
136 fTXMLDoc =
new TXMLDocument(fContext->myDoc);
144 TXMLDocument *TDOMParser::GetXMLDocument()
const