// Copyright (c) 2002 David Muse
// See the COPYING file for more information.
#ifndef RUDIMENTS_XMLDOM_H
#define RUDIMENTS_XMLDOM_H
#include <rudiments/private/xmldomincludes.h>
// The xmldom class implements a minimal XML DOM parser.
#ifdef RUDIMENTS_NAMESPACE
namespace rudiments {
#endif
class xmldomprivate;
class xmldom : public xmlsax {
public:
xmldom();
virtual ~xmldom();
bool parseFile(const char *filename);
// Parse file "filename" and generate a DOM tree.
bool parseString(const char *string);
// Parse string "string" and generate a DOM tree.
xmldomnode *getRootNode() const;
// Returns the root node of the DOM tree.
void createRootNode();
// Creates a new root node. Useful for building a
// tree from scratch.
bool writeFile(const char *filename, mode_t perms) const;
// Writes the current DOM tree to "filename" and sets
// permissions of the file to "perms".
#include <rudiments/private/xmldom.h>
};
#ifdef RUDIMENTS_NAMESPACE
}
#endif
#endif