File indexing completed on 2025-01-30 10:27:02
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #if !defined(XERCESC_INCLUDE_GUARD_DOMPARENTNODE_HPP)
0023 #define XERCESC_INCLUDE_GUARD_DOMPARENTNODE_HPP
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039
0040
0041
0042
0043
0044
0045 #include <xercesc/util/XercesDefs.hpp>
0046 #include "DOMNodeListImpl.hpp"
0047
0048 XERCES_CPP_NAMESPACE_BEGIN
0049
0050
0051 class DOMChildNode;
0052 class DOMDocument;
0053 class DOMNode;
0054 class DOMNodeList;
0055
0056 class CDOM_EXPORT DOMParentNode {
0057 public:
0058 DOMNode *fContainingNode;
0059 DOMDocument *fOwnerDocument;
0060 DOMNode *fFirstChild;
0061 DOMNodeListImpl fChildNodeList;
0062
0063 public:
0064 DOMParentNode(DOMNode* containingNode, DOMDocument *ownerDocument);
0065 DOMParentNode(DOMNode* containingNode, const DOMParentNode &other);
0066 ~DOMParentNode();
0067
0068 private:
0069
0070 DOMParentNode(const DOMParentNode &other);
0071
0072 DOMNode* getContainingNode();
0073 const DOMNode* getContainingNode() const;
0074 const DOMNodeImpl* getContainingNodeImpl() const;
0075
0076 public:
0077 DOMDocument * getOwnerDocument() const;
0078 void setOwnerDocument(DOMDocument* doc);
0079
0080
0081
0082 int changes() const;
0083 void changed();
0084
0085 DOMNode* appendChild(DOMNode *newChild);
0086 DOMNodeList* getChildNodes() const;
0087 DOMNode* getFirstChild() const;
0088 DOMNode* getLastChild() const;
0089 bool hasChildNodes() const;
0090 DOMNode* insertBefore(DOMNode *newChild, DOMNode *refChild);
0091 DOMNode* item(unsigned int index) const;
0092 DOMNode* removeChild(DOMNode *oldChild);
0093 DOMNode* replaceChild(DOMNode *newChild, DOMNode *oldChild);
0094
0095
0096
0097 virtual DOMNode* appendChildFast(DOMNode *newChild);
0098
0099
0100 void normalize();
0101
0102
0103 bool isEqualNode(const DOMNode* arg) const;
0104
0105
0106
0107 DOMDocument * getDocument() const;
0108 void release();
0109
0110
0111 public:
0112 void cloneChildren(const DOMNode *other);
0113 DOMNode * lastChild() const;
0114 void lastChild(DOMNode *);
0115
0116 private:
0117
0118 DOMParentNode& operator= (const DOMParentNode& other);
0119 };
0120
0121 #define GetDOMParentNodeMemoryManager GET_DIRECT_MM(fOwnerDocument)
0122
0123 XERCES_CPP_NAMESPACE_END
0124
0125 #endif