XQuilla/docs/simple-api/DOMNode_8hpp-source.html
2020-02-17 22:19:08 +01:00

231 lines
18 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>XQilla Simple API Documentation</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<a style="float:right;" href="http://sourceforge.net/projects/xqilla"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=152021&amp;type=2" border="0" alt="SourceForge.net Logo" /></a>
<!-- Generated by Doxygen 1.3.9.1 -->
<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="examples.html">Examples</a></div>
<div class="nav">
<a class="el" href="dir_000007.html">xerces-c-3.0.1</a>&nbsp;/&nbsp;<a class="el" href="dir_000008.html">src</a>&nbsp;/&nbsp;<a class="el" href="dir_000009.html">xercesc</a>&nbsp;/&nbsp;<a class="el" href="dir_000010.html">dom</a></div>
<h1>DOMNode.hpp</h1><a href="DOMNode_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment">00001 <span class="comment">/*</span>
00002 <span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</span>
00003 <span class="comment"> * contributor license agreements. See the NOTICE file distributed with</span>
00004 <span class="comment"> * this work for additional information regarding copyright ownership.</span>
00005 <span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span>
00006 <span class="comment"> * (the "License"); you may not use this file except in compliance with</span>
00007 <span class="comment"> * the License. You may obtain a copy of the License at</span>
00008 <span class="comment"> *</span>
00009 <span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span>
00010 <span class="comment"> *</span>
00011 <span class="comment"> * Unless required by applicable law or agreed to in writing, software</span>
00012 <span class="comment"> * distributed under the License is distributed on an "AS IS" BASIS,</span>
00013 <span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span>
00014 <span class="comment"> * See the License for the specific language governing permissions and</span>
00015 <span class="comment"> * limitations under the License.</span>
00016 <span class="comment"> */</span>
00017
00018 <span class="comment">/*</span>
00019 <span class="comment"> * $Id: DOMNode.hpp 671894 2008-06-26 13:29:21Z borisk $</span>
00020 <span class="comment"> */</span>
00021
00022 <span class="preprocessor">#if !defined(XERCESC_INCLUDE_GUARD_DOMNODE_HPP)</span>
<a name="l00023"></a><a class="code" href="DOMNode_8hpp.html#a0">00023</a> <span class="preprocessor"></span><span class="preprocessor">#define XERCESC_INCLUDE_GUARD_DOMNODE_HPP</span>
00024 <span class="preprocessor"></span>
00025 <span class="preprocessor">#include &lt;xercesc/util/XercesDefs.hpp&gt;</span>
00026
00027 XERCES_CPP_NAMESPACE_BEGIN
00028
00029
00030 <span class="keyword">class </span>DOMDocument;
00031 <span class="keyword">class </span>DOMNamedNodeMap;
00032 <span class="keyword">class </span>DOMNodeList;
00033 <span class="keyword">class </span>DOMUserDataHandler;
00034
<a name="l00139"></a><a class="code" href="classxercesc_1_1DOMNode.html">00139</a> <span class="keyword">class </span>CDOM_EXPORT DOMNode {
00140 <span class="keyword">protected</span>:
00141 <span class="comment">// -----------------------------------------------------------------------</span>
00142 <span class="comment">// Hidden constructors</span>
00143 <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00146"></a><a class="code" href="classxercesc_1_1DOMNode.html#z23_0">00146</a> <span class="comment"></span> DOMNode() {}
<a name="l00147"></a><a class="code" href="classxercesc_1_1DOMNode.html#z23_1">00147</a> DOMNode(<span class="keyword">const</span> DOMNode &amp;) {}
00149
00150 <span class="keyword">private</span>:
00151 <span class="comment">// -----------------------------------------------------------------------</span>
00152 <span class="comment">// Unimplemented constructors and operators</span>
00153 <span class="comment">// -----------------------------------------------------------------------</span>
00156 <span class="comment"></span> DOMNode &amp; operator = (<span class="keyword">const</span> DOMNode &amp;);
00158
00159 <span class="keyword">public</span>:
00160 <span class="comment">// -----------------------------------------------------------------------</span>
00161 <span class="comment">// All constructors are hidden, just the destructor is available</span>
00162 <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00169"></a><a class="code" href="classxercesc_1_1DOMNode.html#z27_0">00169</a> <span class="comment"></span> <span class="keyword">virtual</span> ~DOMNode() {};
00171
00172 <span class="comment">// -----------------------------------------------------------------------</span>
00173 <span class="comment">// Class Types</span>
00174 <span class="comment">// -----------------------------------------------------------------------</span>
<a name="l00182"></a><a class="code" href="classxercesc_1_1DOMNode.html#z29_0">00182</a> <span class="comment"></span> <span class="keyword">enum</span> NodeType {
00183 ELEMENT_NODE = 1,
00184 ATTRIBUTE_NODE = 2,
00185 TEXT_NODE = 3,
00186 CDATA_SECTION_NODE = 4,
00187 ENTITY_REFERENCE_NODE = 5,
00188 ENTITY_NODE = 6,
00189 PROCESSING_INSTRUCTION_NODE = 7,
00190 COMMENT_NODE = 8,
00191 DOCUMENT_NODE = 9,
00192 DOCUMENT_TYPE_NODE = 10,
00193 DOCUMENT_FRAGMENT_NODE = 11,
00194 NOTATION_NODE = 12
00195 };
00196
<a name="l00215"></a><a class="code" href="classxercesc_1_1DOMNode.html#z29_1">00215</a> <span class="keyword">enum</span> DocumentPosition {
00216 DOCUMENT_POSITION_DISCONNECTED = 0x01,
00217 DOCUMENT_POSITION_PRECEDING = 0x02,
00218 DOCUMENT_POSITION_FOLLOWING = 0x04,
00219 DOCUMENT_POSITION_CONTAINS = 0x08,
00220 DOCUMENT_POSITION_CONTAINED_BY = 0x10,
00221 DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC = 0x20
00222 };
00224
00225 <span class="comment">// -----------------------------------------------------------------------</span>
00226 <span class="comment">// Virtual DOMNode interface</span>
00227 <span class="comment">// -----------------------------------------------------------------------</span>
00230 <span class="comment"></span> <span class="comment">// -----------------------------------------------------------------------</span>
00231 <span class="comment">// Getter methods</span>
00232 <span class="comment">// -----------------------------------------------------------------------</span>
00237 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * getNodeName() <span class="keyword">const </span>= 0;
00238
00246 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * getNodeValue() <span class="keyword">const </span>= 0;
00247
00252 <span class="keyword">virtual</span> NodeType getNodeType() <span class="keyword">const </span>= 0;
00253
00264 <span class="keyword">virtual</span> DOMNode *getParentNode() <span class="keyword">const </span>= 0;
00265
00280 <span class="keyword">virtual</span> DOMNodeList *getChildNodes() <span class="keyword">const </span>= 0;
00287 <span class="keyword">virtual</span> DOMNode *getFirstChild() <span class="keyword">const </span>= 0;
00288
00295 <span class="keyword">virtual</span> DOMNode *getLastChild() <span class="keyword">const </span>= 0;
00296
00303 <span class="keyword">virtual</span> DOMNode *getPreviousSibling() <span class="keyword">const </span>= 0;
00304
00311 <span class="keyword">virtual</span> DOMNode *getNextSibling() <span class="keyword">const </span>= 0;
00312
00318 <span class="keyword">virtual</span> DOMNamedNodeMap *getAttributes() <span class="keyword">const </span>= 0;
00319
00331 <span class="keyword">virtual</span> <a class="code" href="classxercesc_1_1DOMDocument.html">DOMDocument</a> *getOwnerDocument() <span class="keyword">const </span>= 0;
00332
00333 <span class="comment">// -----------------------------------------------------------------------</span>
00334 <span class="comment">// Node methods</span>
00335 <span class="comment">// -----------------------------------------------------------------------</span>
00355 <span class="comment"></span> <span class="keyword">virtual</span> DOMNode * cloneNode(<span class="keywordtype">bool</span> deep) <span class="keyword">const </span>= 0;
00356
00384 <span class="keyword">virtual</span> DOMNode *insertBefore(DOMNode *newChild,
00385 DOMNode *refChild) = 0;
00386
00387
00411 <span class="keyword">virtual</span> DOMNode *replaceChild(DOMNode *newChild,
00412 DOMNode *oldChild) = 0;
00425 <span class="keyword">virtual</span> DOMNode *removeChild(DOMNode *oldChild) = 0;
00426
00447 <span class="keyword">virtual</span> DOMNode *appendChild(DOMNode *newChild) = 0;
00448
00449 <span class="comment">// -----------------------------------------------------------------------</span>
00450 <span class="comment">// Query methods</span>
00451 <span class="comment">// -----------------------------------------------------------------------</span>
00460 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> hasChildNodes() <span class="keyword">const </span>= 0;
00461
00462 <span class="comment">// -----------------------------------------------------------------------</span>
00463 <span class="comment">// Setter methods</span>
00464 <span class="comment">// -----------------------------------------------------------------------</span>
00480 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> setNodeValue(<span class="keyword">const</span> XMLCh *nodeValue) = 0;
00482
00505 <span class="keyword">virtual</span> <span class="keywordtype">void</span> normalize() = 0;
00506
00522 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isSupported(<span class="keyword">const</span> XMLCh *feature,
00523 <span class="keyword">const</span> XMLCh *version) <span class="keyword">const </span>= 0;
00524
00540 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * getNamespaceURI() <span class="keyword">const </span>= 0;
00541
00548 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * getPrefix() <span class="keyword">const </span>= 0;
00549
00559 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh * getLocalName() <span class="keyword">const </span>= 0;
00560
00594 <span class="keyword">virtual</span> <span class="keywordtype">void</span> setPrefix(<span class="keyword">const</span> XMLCh * prefix) = 0;
00595
00602 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> hasAttributes() <span class="keyword">const </span>= 0;
00604
00622 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isSameNode(<span class="keyword">const</span> DOMNode* other) <span class="keyword">const </span>= 0;
00623
00664 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isEqualNode(<span class="keyword">const</span> DOMNode* arg) <span class="keyword">const </span>= 0;
00665
00666
00692 <span class="keyword">virtual</span> <span class="keywordtype">void</span>* setUserData(<span class="keyword">const</span> XMLCh* key,
00693 <span class="keywordtype">void</span>* data,
00694 DOMUserDataHandler* handler) = 0;
00695
00707 <span class="keyword">virtual</span> <span class="keywordtype">void</span>* getUserData(<span class="keyword">const</span> XMLCh* key) <span class="keyword">const </span>= 0;
00708
00709
00726 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh* getBaseURI() <span class="keyword">const </span>= 0;
00727
00738 <span class="keyword">virtual</span> <span class="keywordtype">short</span> compareDocumentPosition(<span class="keyword">const</span> DOMNode* other) <span class="keyword">const </span>= 0;
00739
00781 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh* getTextContent() <span class="keyword">const </span>= 0;
00782
00794 <span class="keyword">virtual</span> <span class="keywordtype">void</span> setTextContent(<span class="keyword">const</span> XMLCh* textContent) = 0;
00795
00807 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh* lookupPrefix(<span class="keyword">const</span> XMLCh* namespaceURI) <span class="keyword">const </span>= 0;
00808
00818 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> isDefaultNamespace(<span class="keyword">const</span> XMLCh* namespaceURI) <span class="keyword">const </span>= 0;
00819
00831 <span class="keyword">virtual</span> <span class="keyword">const</span> XMLCh* lookupNamespaceURI(<span class="keyword">const</span> XMLCh* prefix) <span class="keyword">const </span>= 0;
00832
00848 <span class="keyword">virtual</span> <span class="keywordtype">void</span>* getFeature(<span class="keyword">const</span> XMLCh* feature, <span class="keyword">const</span> XMLCh* version) <span class="keyword">const </span>= 0;
00850
00851 <span class="comment">// -----------------------------------------------------------------------</span>
00852 <span class="comment">// Non-standard Extension</span>
00853 <span class="comment">// -----------------------------------------------------------------------</span>
00869 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> release() = 0;
00871 <span class="preprocessor">#if defined(XML_DOMREFCOUNT_EXPERIMENTAL)</span>
00872 <span class="preprocessor"></span> <span class="comment">// -----------------------------------------------------------------------</span>
00873 <span class="comment">// Non-standard Extension</span>
00874 <span class="comment">// -----------------------------------------------------------------------</span>
00884 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> decRefCount() {}
00886
00887 <span class="comment">// -----------------------------------------------------------------------</span>
00888 <span class="comment">// Non-standard Extension</span>
00889 <span class="comment">// -----------------------------------------------------------------------</span>
00896 <span class="comment"></span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> incRefCount() {}
00898 <span class="preprocessor">#endif</span>
00899 <span class="preprocessor"></span>};
00900
00901 <span class="comment">/***</span>
00902 <span class="comment"> * Utilities macros for getting memory manager within DOM</span>
00903 <span class="comment">***/</span>
<a name="l00904"></a><a class="code" href="DOMNode_8hpp.html#a1">00904</a> <span class="preprocessor">#define GET_OWNER_DOCUMENT(ptr) \</span>
00905 <span class="preprocessor"> ((DOMDocumentImpl*)(ptr-&gt;getOwnerDocument()))</span>
00906 <span class="preprocessor"></span>
<a name="l00907"></a><a class="code" href="DOMNode_8hpp.html#a2">00907</a> <span class="preprocessor">#define GET_DIRECT_MM(ptr) \</span>
00908 <span class="preprocessor"> (ptr ? ((DOMDocumentImpl*)ptr)-&gt;getMemoryManager() : XMLPlatformUtils::fgMemoryManager)</span>
00909 <span class="preprocessor"></span>
<a name="l00910"></a><a class="code" href="DOMNode_8hpp.html#a3">00910</a> <span class="preprocessor">#define GET_INDIRECT_MM(ptr) \</span>
00911 <span class="preprocessor"> (!ptr ? XMLPlatformUtils::fgMemoryManager : \</span>
00912 <span class="preprocessor"> GET_OWNER_DOCUMENT(ptr) ? GET_OWNER_DOCUMENT(ptr)-&gt;getMemoryManager() : \</span>
00913 <span class="preprocessor"> XMLPlatformUtils::fgMemoryManager)</span>
00914 <span class="preprocessor"></span>
00915 <span class="comment">/***</span>
00916 <span class="comment"> * For DOMNode and its derivatives</span>
00917 <span class="comment">***/</span>
<a name="l00918"></a><a class="code" href="DOMNode_8hpp.html#a4">00918</a> <span class="preprocessor">#define GetDOMNodeMemoryManager GET_INDIRECT_MM(this)</span>
00919 <span class="preprocessor"></span>
00920 XERCES_CPP_NAMESPACE_END
00921
00922 <span class="preprocessor">#endif</span>
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri Sep 25 06:55:26 2009 for XQilla Simple API by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.3.9.1 </small></address>
</body>
</html>