Xerces-C++: DOMNodeIterator Class Reference

| API Docs for SAX and DOM |
| Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages # DOMNodeIterator Class Reference `DOMNodeIterators` are used to step through a set of nodes, e.g. More... List of all members.
## Public Member Functions
Destructor
virtual | ~DOMNodeIterator ()
| Destructor.
Functions introduced in DOM Level 2
virtual DOMNode * | getRoot ()=0
| The `root` node of the `DOMNodeIterator`, as specified when it was created.
virtual unsigned long | getWhatToShow ()=0
| Return which node types are presented via the iterator.
virtual DOMNodeFilter * | getFilter ()=0
| The `DOMNodeFilter` used to screen nodes.
virtual bool | getExpandEntityReferences ()=0
| Return the expandEntityReferences flag.
virtual DOMNode * | nextNode ()=0
| Returns the next node in the set and advances the position of the `DOMNodeIterator` in the set.
virtual DOMNode * | previousNode ()=0
| Returns the previous node in the set and moves the position of the `DOMNodeIterator` backwards in the set.
virtual void | detach ()=0
| Detaches the `DOMNodeIterator` from the set which it iterated over, releasing any computational resources and placing the `DOMNodeIterator` in the INVALID state.
Non-standard Extension
virtual void | release ()=0
| Called to indicate that this NodeIterator is no longer in use and that the implementation may relinquish any resources associated with it.
## Protected Member Functions
Hidden constructors
| DOMNodeIterator ()
| DOMNodeIterator (const DOMNodeIterator &)
## Detailed Description `DOMNodeIterators` are used to step through a set of nodes, e.g. the set of nodes in a `DOMNodeList`, the document subtree governed by a particular `DOMNode`, the results of a query, or any other set of nodes. The set of nodes to be iterated is determined by the implementation of the `DOMNodeIterator`. DOM Level 2 specifies a single `DOMNodeIterator` implementation for document-order traversal of a document subtree. Instances of these `DOMNodeIterators` are created by calling `DOMDocumentTraversal``.createNodeIterator()`. See also the Document Object Model (DOM) Level 2 Traversal and Range Specification. Since: DOM Level 2 ## Constructor & Destructor Documentation
DOMNodeIterator::DOMNodeIterator | ( |  | ) | `[protected]`
DOMNodeIterator::DOMNodeIterator | ( | const DOMNodeIterator & |  | ) | `[protected]`
virtual DOMNodeIterator::~DOMNodeIterator | ( |  | ) | `[virtual]`
| Destructor.
## Member Function Documentation
virtual void DOMNodeIterator::detach | ( |  | ) | `[pure virtual]`
| Detaches the `DOMNodeIterator` from the set which it iterated over, releasing any computational resources and placing the `DOMNodeIterator` in the INVALID state. After `detach` has been invoked, calls to `nextNode` or `previousNode` will raise the exception INVALID_STATE_ERR. Since: DOM Level 2
virtual bool DOMNodeIterator::getExpandEntityReferences | ( |  | ) | `[pure virtual]`
| Return the expandEntityReferences flag. The value of this flag determines whether the children of entity reference nodes are visible to the `DOMNodeIterator`. If false, these children and their descendants will be rejected. Note that this rejection takes precedence over `whatToShow` and the filter. Also note that this is currently the only situation where `DOMNodeIterators` may reject a complete subtree rather than skipping individual nodes. To produce a view of the document that has entity references expanded and does not expose the entity reference node itself, use the `whatToShow` flags to hide the entity reference node and set `expandEntityReferences` to true when creating the `DOMNodeIterator`. To produce a view of the document that has entity reference nodes but no entity expansion, use the `whatToShow` flags to show the entity reference node and set `expandEntityReferences` to false. Since: DOM Level 2
virtual DOMNodeFilter* DOMNodeIterator::getFilter | ( |  | ) | `[pure virtual]`
| The `DOMNodeFilter` used to screen nodes. Since: DOM Level 2
virtual DOMNode* DOMNodeIterator::getRoot | ( |  | ) | `[pure virtual]`
| The `root` node of the `DOMNodeIterator`, as specified when it was created. Since: DOM Level 2
virtual unsigned long DOMNodeIterator::getWhatToShow | ( |  | ) | `[pure virtual]`
| Return which node types are presented via the iterator. This attribute determines which node types are presented via the `DOMNodeIterator`. The available set of constants is defined in the `DOMNodeFilter` interface. Nodes not accepted by `whatToShow` will be skipped, but their children may still be considered. Note that this skip takes precedence over the filter, if any. Since: DOM Level 2
virtual DOMNode* DOMNodeIterator::nextNode | ( |  | ) | `[pure virtual]`
  | Returns the next node in the set and advances the position of the `DOMNodeIterator` in the set. After a `DOMNodeIterator` is created, the first call to `nextNode()` returns the first node in the set. Returns: The next `DOMNode` in the set being iterated over, or `null` if there are no more members in that set. Exceptions:
  | DOMException | INVALID_STATE_ERR: Raised if this method is called after the `detach` method was invoked.
Since: DOM Level 2
virtual DOMNode* DOMNodeIterator::previousNode | ( |  | ) | `[pure virtual]`
  | Returns the previous node in the set and moves the position of the `DOMNodeIterator` backwards in the set. Returns: The previous `DOMNode` in the set being iterated over, or `null` if there are no more members in that set. Exceptions:
  | DOMException | INVALID_STATE_ERR: Raised if this method is called after the `detach` method was invoked.
Since: DOM Level 2
virtual void DOMNodeIterator::release | ( |  | ) | `[pure virtual]`
| Called to indicate that this NodeIterator is no longer in use and that the implementation may relinquish any resources associated with it. (release() will call detach() where appropriate) Access to a released object will lead to unexpected result.
The documentation for this class was generated from the following file: DOMNodeIterator.hpp

Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.