Xerces-C++ 3.1.3

- Main Page
- Related Pages
- Classes
- Files

- File List
- File Members

DOMTypeInfo.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 #if !defined(XERCESC_INCLUDE_GUARD_DOMTYPEINFO_HPP)
19 #define XERCESC_INCLUDE_GUARD_DOMTYPEINFO_HPP
20
21 //------------------------------------------------------------------------------------
22 // Includes
23 //------------------------------------------------------------------------------------
24 #include <xercesc/util/XMLString.hpp>
25
26
27 XERCES_CPP_NAMESPACE_BEGIN
28
35 class CDOM_EXPORT DOMTypeInfo
36 {
37 protected:
38 // -----------------------------------------------------------------------
39 // Hidden constructors
40 // -----------------------------------------------------------------------
43 DOMTypeInfo() {};
45
46 private:
47 // -----------------------------------------------------------------------
48 // Unimplemented constructors and operators
49 // -----------------------------------------------------------------------
52 DOMTypeInfo(const DOMTypeInfo &);
53 DOMTypeInfo & operator = (const DOMTypeInfo &);
55
56 public:
57
58 // -----------------------------------------------------------------------
59 // All constructors are hidden, just the destructor is available
60 // -----------------------------------------------------------------------
67 virtual ~DOMTypeInfo() {};
69
70 // -----------------------------------------------------------------------
71 // Class Types
72 // -----------------------------------------------------------------------
129 enum DerivationMethods {
130 DERIVATION_RESTRICTION = 0x001,
131 DERIVATION_EXTENSION = 0x002,
132 DERIVATION_UNION = 0x004,
133 DERIVATION_LIST = 0x008
134 };
136
138 // -----------------------------------------------------------------------
139 // Getter methods
140 // -----------------------------------------------------------------------
149 virtual const XMLCh* getTypeName() const = 0;
150
161 virtual const XMLCh* getTypeNamespace() const = 0;
163
165
184 virtual bool isDerivedFrom(const XMLCh* typeNamespaceArg,
185 const XMLCh* typeNameArg,
186 DerivationMethods derivationMethod) const = 0;
188 };
189
190 XERCES_CPP_NAMESPACE_END
191
192 #endif
193