Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XercesWrapperNavigator.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #if !defined(XERCESWRAPPERNAVIGATOR_HEADER_GUARD_1357924680)
17 #define XERCESWRAPPERNAVIGATOR_HEADER_GUARD_1357924680
18 
19 
20 
22 
23 
24 
25 #include <cassert>
26 
27 
28 
29 #include <xercesc/util/XercesDefs.hpp>
30 
31 
32 
35 
36 
37 
39 
40 
41 
42 XALAN_CPP_NAMESPACE_BEGIN
43 
44 
45 
47 class XalanAttr;
48 class XalanElement;
49 class XalanText;
50 
51 
52 
54 {
55 public:
56 
58 
59  explicit
60  XercesWrapperNavigator(XercesDocumentWrapper* theOwnerDocument = 0);
61 
63 
64  virtual
66 
67 
69  getOwnerDocument() const
70  {
71  return m_ownerDocument;
72  }
73 
74  void
75  setOwnerDocument(XercesDocumentWrapper* theDocument)
76  {
77  m_ownerDocument = theDocument;
78  }
79 
80  XalanNode*
81  mapNode(const DOMNodeType* theXercesNode) const;
82 
83  XalanAttr*
84  mapNode(const DOMAttrType* theXercesNode) const;
85 
86  const DOMNodeType*
87  mapNode(XalanNode* theXalanNode) const;
88 
89  IndexType
90  getIndex() const
91  {
92  return m_index;
93  }
94 
95  void
96  setIndex(IndexType theIndex)
97  {
98  m_index = theIndex;
99  }
100 
101  XalanNode*
102  getParentNode(const DOMNodeType* theXercesNode) const;
103 
104  XalanNode*
105  getParentNode() const
106  {
107  return m_parentNode;
108  }
109 
110  void
111  setParentNode(XalanNode* theParent)
112  {
113  m_parentNode = theParent;
114  }
115 
116  XalanNode*
117  getPreviousSibling(const DOMNodeType* theXercesNode) const;
118 
119  XalanNode*
120  getPreviousSibling() const
121  {
122  return m_previousSibling;
123  }
124 
125  void
126  setPreviousSibling(XalanNode* thePreviousSibling)
127  {
128  m_previousSibling = thePreviousSibling;
129  }
130 
131  XalanNode*
132  getNextSibling(const DOMNodeType* theXercesNode) const;
133 
134  XalanNode*
135  getNextSibling() const
136  {
137  return m_nextSibling;
138  }
139 
140  void
141  setNextSibling(XalanNode* theNextSibling)
142  {
143  m_nextSibling = theNextSibling;
144  }
145 
146  XalanNode*
147  getFirstChild(const DOMNodeType* theXercesNode) const;
148 
149  XalanNode*
150  getFirstChild() const
151  {
152  return m_firstChild;
153  }
154 
155  void
156  setFirstChild(XalanNode* theFirstChild)
157  {
158  m_firstChild = theFirstChild;
159  }
160 
161  XalanNode*
162  getLastChild(const DOMNodeType* theXercesNode) const;
163 
164  XalanNode*
165  getLastChild() const
166  {
167  return m_lastChild;
168  }
169 
170  void
171  setLastChild(XalanNode* theLastChild)
172  {
173  m_lastChild = theLastChild;
174  }
175 
176  XalanElement*
177  getOwnerElement(const DOMAttrType* theXercesAttr) const;
178 
186  const XalanDOMString&
187  getPooledString(const XMLCh* theString) const;
188 
189 private:
190 
191  // Not implemented...
192  bool
193  operator==(const XercesWrapperNavigator& theRHS) const;
194 
195  // Data members...
196  XercesDocumentWrapper* m_ownerDocument;
197 
198  XalanNode* m_parentNode;
199 
200  XalanNode* m_previousSibling;
201 
202  XalanNode* m_nextSibling;
203 
204  XalanNode* m_firstChild;
205 
206  XalanNode* m_lastChild;
207 
208  IndexType m_index;
209 
210  static const XalanDOMString s_emptyString;
211 };
212 
213 
214 
215 XALAN_CPP_NAMESPACE_END
216 
217 
218 
219 #endif // !defined(XERCESWRAPPERNAVIGATOR_HEADER_GUARD_1357924680)

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo