string _filename;
XMLNode *_root;
int _compression;
- bool _initialized;
public:
XMLTree();
XMLTree(const XMLTree *);
~XMLTree();
- bool initialized() const { return _initialized; };
XMLNode *root() const { return _root; };
- XMLNode *set_root(XMLNode *n) { _initialized = true; return _root = n; };
+ XMLNode *set_root(XMLNode *n) { return _root = n; };
const string & filename() const { return _filename; };
const string & set_filename(const string &fn) { return _filename = fn; };
class XMLNode {
private:
- bool _initialized;
string _name;
bool _is_content;
string _content;
XMLNodeList _children;
XMLPropertyList _proplist;
XMLPropertyMap _propmap;
+ mutable XMLNodeList _selected_children;
public:
XMLNode(const string &);
XMLNode(const XMLNode&);
~XMLNode();
- bool initialized() const { return _initialized; };
const string name() const { return _name; };
bool is_content() const { return _is_content; };
const string & content() const { return _content; };
- const string & set_content(const string &);
+ const string & set_content (const string &);
XMLNode *add_content(const string & = string());
- const XMLNodeList & children(const string & = string()) const;
- XMLNode *add_child(const char *);
- XMLNode *add_child_copy(const XMLNode&);
- void add_child_nocopy (XMLNode&);
+ const XMLNodeList & children (const string& str = string()) const;
+ XMLNode *add_child (const char *);
+ XMLNode *add_child_copy (const XMLNode&);
+ XMLNode *child (const char*) const;
+ void add_child_nocopy (XMLNode&);
const XMLPropertyList & properties() const { return _proplist; };
XMLProperty *property(const char * );
+ XMLProperty *property(const std::string&);
const XMLProperty *property(const char * n) const
{ return ((XMLNode *) this)->property(n); };
+ const XMLProperty *property(const std::string& ns) const
+ { return ((XMLNode *) this)->property(ns); };
XMLProperty *add_property(const char *, const string &);
XMLProperty *add_property(const char *, const char * = "");