Xerces-C++: DOMWriterFilter.hpp Source File

| API Docs for SAX and DOM |
| Main Page Classes Files Related Pages # DOMWriterFilter.hpp Go to the documentation of this file.
    00001 #ifndef DOMWriterFilter_HEADER_GUARD_
    00002 #define DOMWriterFilter_HEADER_GUARD_
    00003
    00004 /*
    00005  * Licensed to the Apache Software Foundation (ASF) under one or more
    00006  * contributor license agreements.  See the NOTICE file distributed with
    00007  * this work for additional information regarding copyright ownership.
    00008  * The ASF licenses this file to You under the Apache License, Version 2.0
    00009  * (the "License"); you may not use this file except in compliance with
    00010  * the License.  You may obtain a copy of the License at
    00011  *
    00012  *      http://www.apache.org/licenses/LICENSE-2.0
    00013  *
    00014  * Unless required by applicable law or agreed to in writing, software
    00015  * distributed under the License is distributed on an "AS IS" BASIS,
    00016  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00017  * See the License for the specific language governing permissions and
    00018  * limitations under the License.
    00019  */
    00020
    00021 /*
    00022  * $Id: DOMWriterFilter.hpp 568078 2007-08-21 11:43:25Z amassari $
    00023  */
    00024
    00042 #include <xercesc/dom/DOMNodeFilter.hpp>
    00043
    00044 XERCES_CPP_NAMESPACE_BEGIN
    00045
    00046
    00047 class  DOMWriterFilter : public DOMNodeFilter {
    00048 protected:
    00049     // -----------------------------------------------------------------------
    00050     //  Hidden constructors
    00051     // -----------------------------------------------------------------------
    00054     DOMWriterFilter() {};
    00056
    00057 private:
    00058     // -----------------------------------------------------------------------
    00059     // Unimplemented constructors and operators
    00060     // -----------------------------------------------------------------------
    00063     DOMWriterFilter(const DOMWriterFilter &);
    00064     DOMWriterFilter & operator = (const DOMWriterFilter &);
    00066
    00067
    00068 public:
    00069     // -----------------------------------------------------------------------
    00070     //  All constructors are hidden, just the destructor is available
    00071     // -----------------------------------------------------------------------
    00078     virtual ~DOMWriterFilter() {};
    00080
    00081     // -----------------------------------------------------------------------
    00082     //  Virtual DOMWriterFilter interface
    00083     // -----------------------------------------------------------------------
    00090     virtual short acceptNode(const DOMNode* node) const = 0;
    00091
    00104     virtual unsigned long getWhatToShow() const =0;
    00105
    00116     virtual void          setWhatToShow(unsigned long toShow) =0;
    00118
    00119 private:
    00120
    00121     // -----------------------------------------------------------------------
    00122     //  Private data members
    00123     //
    00124     //  fWhatToShow
    00125     //
    00126     //      The whatToShow mask.
    00127     //      Tells the DOMWriter what types of nodes to show to the filter.
    00128     //      See NodeFilter for definition of the constants.
    00129     //      The constants
    00130     //      SHOW_ATTRIBUTE,
    00131     //      SHOW_DOCUMENT,
    00132     //      SHOW_DOCUMENT_TYPE,
    00133     //      SHOW_NOTATION, and
    00134     //      SHOW_DOCUMENT_FRAGMENT are meaningless here,
    00135     //      Entity nodes are not passed to the filter.
    00136     //
    00137     //      Those nodes will never be passed to a DOMWriterFilter.
    00138     //
    00139     //   Derived class shall add this data member:
    00140     //
    00141     //   unsigned long fWhatToShow;
    00142     // -----------------------------------------------------------------------
    00143
    00144 };
    00145
    00146 XERCES_CPP_NAMESPACE_END
    00147
    00148 #endif

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