domtreewalkerimpl.hpp

来自「IBM的解析xml的工具Xerces的源代码」· HPP 代码 · 共 168 行

HPP
168
字号
#ifndef DOMTreeWalkerImpl_HEADER_GUARD_#define DOMTreeWalkerImpl_HEADER_GUARD_/* * Copyright 2001-2002,2004 The Apache Software Foundation. *  * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at *  *      http://www.apache.org/licenses/LICENSE-2.0 *  * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *//* * $Id: DOMTreeWalkerImpl.hpp,v 1.4 2004/09/08 13:55:52 peiyongz Exp $ */////  This file is part of the internal implementation of the C++ XML DOM.//  It should NOT be included or used directly by application programs.////  Applications should include the file <xercesc/dom/DOM.hpp> for the entire//  DOM API, or xercesc/dom/DOM*.hpp for individual DOM classes, where the class//  name is substituded for the *.//#include <xercesc/dom/DOMTreeWalker.hpp>XERCES_CPP_NAMESPACE_BEGINclass CDOM_EXPORT DOMTreeWalkerImpl : public DOMTreeWalker {    private:        // The whatToShow mask.        unsigned long fWhatToShow;        // The NodeFilter reference.        DOMNodeFilter* fNodeFilter;        // The current Node.        DOMNode* fCurrentNode;        // The root Node.        DOMNode* fRoot;        // The expandEntity reference flag.        bool fExpandEntityReferences;	public:    // Implementation Note: No state is kept except the data above    // (fWhatToShow, fNodeFilter, fCurrentNode, fRoot) such that    // setters could be created for these data values and the    // implementation will still work.    /** Public constructor */    DOMTreeWalkerImpl (        DOMNode* root,        unsigned long whatToShow,        DOMNodeFilter* nodeFilter,        bool expandEntityRef);    DOMTreeWalkerImpl (const DOMTreeWalkerImpl& twi);    DOMTreeWalkerImpl& operator= (const DOMTreeWalkerImpl& twi);    // Return the root node.    virtual DOMNode* getRoot ();    // Return the whatToShow value.    virtual unsigned long  getWhatToShow ();    // Return the NodeFilter.    virtual DOMNodeFilter* getFilter ();	    // Return the current DOMNode.    virtual DOMNode* getCurrentNode ();    // Return the current Node.    virtual void setCurrentNode (DOMNode* node);    // Return the parent Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* parentNode ();    // Return the first child Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* firstChild ();    // Return the last child Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* lastChild ();    // Return the previous sibling Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* previousSibling ();    // Return the next sibling Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* nextSibling ();    // Return the previous Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* previousNode ();    // Return the next Node from the current node,    //  after applying filter, whatToshow.    //  If result is not null, set the current Node.    virtual DOMNode* nextNode ();    // Get the expandEntity reference flag.    virtual bool getExpandEntityReferences();    // release the resource    virtual void release();protected:    // Internal function.    //  Return the parent Node, from the input node    //  after applying filter, whatToshow.    //  The current node is not consulted or set.    DOMNode* getParentNode (DOMNode* node);    // Internal function.    //  Return the nextSibling Node, from the input node    //  after applying filter, whatToshow.    //  The current node is not consulted or set.    DOMNode* getNextSibling (DOMNode* node);    // Internal function.    //  Return the previous sibling Node, from the input node    //  after applying filter, whatToshow.    //  The current node is not consulted or set.    DOMNode* getPreviousSibling (DOMNode* node);    // Internal function.    //  Return the first child Node, from the input node    //  after applying filter, whatToshow.    //  The current node is not consulted or set.    DOMNode* getFirstChild (DOMNode* node);    // Internal function.    //  Return the last child Node, from the input node    //  after applying filter, whatToshow.    //  The current node is not consulted or set.    DOMNode* getLastChild (DOMNode* node);    // The node is accepted if it passes the whatToShow and the filter.    short acceptNode (DOMNode* node);    		};XERCES_CPP_NAMESPACE_END#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?