Xerces-C++ 3.2.3

DOMNodeFilter.hpp
Go to the documentation of this file.
1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 /*
19 * $Id$
20 */
21
22 #if !defined(XERCESC_INCLUDE_GUARD_DOMNODEFILTER_HPP)
23 #define XERCESC_INCLUDE_GUARD_DOMNODEFILTER_HPP
24
25 #include <xercesc/dom/DOMNode.hpp>
26
27 XERCES_CPP_NAMESPACE_BEGIN
28
29
49 class CDOM_EXPORT DOMNodeFilter
50 {
51 protected:
52 // -----------------------------------------------------------------------
53 // Hidden constructors
54 // -----------------------------------------------------------------------
57 DOMNodeFilter() {};
59
60 private:
61 // -----------------------------------------------------------------------
62 // Unimplemented constructors and operators
63 // -----------------------------------------------------------------------
66 DOMNodeFilter(const DOMNodeFilter &);
67 DOMNodeFilter & operator = (const DOMNodeFilter &);
69
70 public:
71 // -----------------------------------------------------------------------
72 // All constructors are hidden, just the destructor is available
73 // -----------------------------------------------------------------------
80 virtual ~DOMNodeFilter() {};
82
83 // -----------------------------------------------------------------------
84 // Class Types
85 // -----------------------------------------------------------------------
112 enum FilterAction {FILTER_ACCEPT = 1,
113 FILTER_REJECT = 2,
114 FILTER_SKIP = 3};
115
177 enum ShowTypeMasks {
178 SHOW_ALL = 0x0000FFFF,
179 SHOW_ELEMENT = 0x00000001,
180 SHOW_ATTRIBUTE = 0x00000002,
181 SHOW_TEXT = 0x00000004,
182 SHOW_CDATA_SECTION = 0x00000008,
183 SHOW_ENTITY_REFERENCE = 0x00000010,
184 SHOW_ENTITY = 0x00000020,
185 SHOW_PROCESSING_INSTRUCTION = 0x00000040,
186 SHOW_COMMENT = 0x00000080,
187 SHOW_DOCUMENT = 0x00000100,
188 SHOW_DOCUMENT_TYPE = 0x00000200,
189 SHOW_DOCUMENT_FRAGMENT = 0x00000400,
190 SHOW_NOTATION = 0x00000800
191 };
192
193 typedef unsigned long ShowType;
194
196
197 // -----------------------------------------------------------------------
198 // Virtual DOMNodeFilter interface
199 // -----------------------------------------------------------------------
214 virtual FilterAction acceptNode (const DOMNode* node) const =0;
216
217 };
218
219 XERCES_CPP_NAMESPACE_END
220
221 #endif
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
CDOM_EXPORT
#define CDOM_EXPORT
Definition: XercesDefs.hpp:166
DOMNodeFilter::FilterAction
FilterAction
Constants returned by acceptNode.
Definition: DOMNodeFilter.hpp:112
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
DOMNodeFilter::ShowType
unsigned long ShowType
Definition: DOMNodeFilter.hpp:193
DOMNode.hpp
DOMNodeFilter::DOMNodeFilter
DOMNodeFilter()
Definition: DOMNodeFilter.hpp:57
DOMNodeFilter::~DOMNodeFilter
virtual ~DOMNodeFilter()
Destructor.
Definition: DOMNodeFilter.hpp:80
DOMNodeFilter::ShowTypeMasks
ShowTypeMasks
Constants for whatToShow.
Definition: DOMNodeFilter.hpp:177
DOMNodeFilter
Filters are objects that know how to "filter out" nodes.
Definition: DOMNodeFilter.hpp:49
DOMNode
The DOMNode interface is the primary datatype for the entire Document Object Model.
Definition: DOMNode.hpp:139