00001 /* 00002 * Copyright 1999-2004 The Apache Software Foundation. 00003 * 00004 * Licensed under the Apache License, Version 2.0 (the "License"); 00005 * you may not use this file except in compliance with the License. 00006 * You may obtain a copy of the License at 00007 * 00008 * http://www.apache.org/licenses/LICENSE-2.0 00009 * 00010 * Unless required by applicable law or agreed to in writing, software 00011 * distributed under the License is distributed on an "AS IS" BASIS, 00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 * See the License for the specific language governing permissions and 00014 * limitations under the License. 00015 */ 00016 #if !defined(NODENAMETREEWALKER_HEADER_GUARD_1357924680) 00017 #define NODENAMETREEWALKER_HEADER_GUARD_1357924680 00018 00019 00020 #include <xalanc/Include/XalanVector.hpp> 00021 00022 00023 00024 #include <xalanc/XalanDOM/XalanDOMString.hpp> 00025 00026 00027 00028 // Base class include file. 00029 #include <xalanc/DOMSupport/TreeWalker.hpp> 00030 00031 00032 00033 XALAN_CPP_NAMESPACE_BEGIN 00034 00035 00036 00037 class NodeNameTreeWalker : public TreeWalker 00038 { 00039 public: 00040 00041 typedef XalanVector<const XalanNode*> NodeVectorType; 00042 00043 NodeNameTreeWalker(MemoryManagerType& theManager); 00044 00045 virtual 00046 ~NodeNameTreeWalker(); 00047 00055 virtual void 00056 findMatchingNodes( 00057 const XalanDOMString& theNodeName, 00058 const XalanNode* theStartNode); 00059 00060 virtual void 00061 findMatchingNodes( 00062 const XalanDOMString& theNodeName, 00063 XalanNode* theStartNode); 00064 00070 const NodeVectorType& 00071 getMatchingNodes() const 00072 { 00073 return m_matchingNodes; 00074 } 00075 00076 protected: 00077 00078 virtual bool 00079 startNode(XalanNode* node); 00080 00081 virtual bool 00082 endNode(XalanNode* node); 00083 00084 virtual bool 00085 startNode(const XalanNode* node); 00086 00087 virtual bool 00088 endNode(const XalanNode* node); 00089 00090 private: 00091 00092 XalanDOMString m_nodeName; 00093 00094 NodeVectorType m_matchingNodes; 00095 }; 00096 00097 00098 00099 XALAN_CPP_NAMESPACE_END 00100 00101 00102 00103 #endif // NODENAMETREEWALKER_HEADER_GUARD_1357924680
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.10 |
|