Xerces-C++  3.2.2
XMLInitializer.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: XMLInitializer.hpp 1329252 2012-04-23 14:24:41Z amassari $
20  */
21 
22 #if !defined(XERCESC_INCLUDE_GUARD_XMLINITIALIZER_HPP)
23 #define XERCESC_INCLUDE_GUARD_XMLINITIALIZER_HPP
24 
26 
28 
29 
38 {
39 protected :
42 
47  static void initializeTransService();
48  static void initializeStaticData();
49 
54  static void terminateStaticData();
55  static void terminateTransService();
56 
58 
59  friend class XMLPlatformUtils;
60 
61 private :
63  XMLInitializer(const XMLInitializer& toCopy);
64  XMLInitializer& operator=(const XMLInitializer&);
65 
66 private:
67  // Note: The name of each function should be in the form
68  // initialize<class-name>.
69  //
70  // Note: In some cases order of initialization is important.
71  //
72 
73  //
74  // Initialize
75  //
76 
77  // Core
78  //
79  static void initializeEncodingValidator();
80  static void initializeXMLException();
81  static void initializeXMLScanner();
82  static void initializeXMLValidator();
83 
84  // Regex
85  //
86  static void initializeRangeTokenMap();
87  static void initializeRegularExpression();
88 
89  // DTD
90  //
91  static void initializeDTDGrammar();
92 
93  // Schema
94  //
95  static void initializeXSDErrorReporter();
96  static void initializeDatatypeValidatorFactory();
97  static void initializeGeneralAttributeCheck();
98  static void initializeXSValue();
99  static void initializeComplexTypeInfo();
100 
101  // DOM
102  //
103  static void initializeDOMImplementationRegistry();
104  static void initializeDOMImplementationImpl();
105  static void initializeDOMDocumentTypeImpl();
106  static void initializeDOMNodeListImpl();
107  static void initializeDOMNormalizer();
108 
109  // XInclude
110  //
111  static void initializeXInclude();
112 
113  //
114  // Terminate
115  //
116 
117  // Core
118  //
119  static void terminateEncodingValidator();
120  static void terminateXMLException();
121  static void terminateXMLScanner();
122  static void terminateXMLValidator();
123 
124  // Regex
125  //
126  static void terminateRangeTokenMap();
127  static void terminateRegularExpression();
128 
129  // DTD
130  //
131  static void terminateDTDGrammar();
132 
133  // Schema
134  //
135  static void terminateXSDErrorReporter();
136  static void terminateDatatypeValidatorFactory();
137  static void terminateGeneralAttributeCheck();
138  static void terminateXSValue();
139  static void terminateComplexTypeInfo();
140 
141  // DOM
142  //
143  static void terminateDOMImplementationRegistry();
144  static void terminateDOMImplementationImpl();
145  static void terminateDOMDocumentTypeImpl();
146  static void terminateDOMNodeListImpl();
147  static void terminateDOMNormalizer();
148 
149  // XInclude
150  //
151  static void terminateXInclude();
152 
153  //
154  // Extra initialization.
155  //
156  static void initializeDOMHeap (XMLSize_t initialHeapAllocSize,
157  XMLSize_t maxHeapAllocSize,
158  XMLSize_t maxSubAllocationSize);
159 };
160 
161 
163 
164 #endif
Utilities that must be implemented in a class-specific way.
Definition: XMLInitializer.hpp:37
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
Utilities that must be implemented in a platform-specific way.
Definition: PlatformUtils.hpp:68
size_t XMLSize_t
Definition: Xerces_autoconf_config.hpp:112
#define XMLUTIL_EXPORT
Definition: XercesDefs.hpp:162
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113