OSDN Git Service

initial files
[iptd/iPTd_R3.git] / lib / libxml / include / libxml2 / libxml / globals.h
1 /*
2  * Summary: interface for all global variables of the library
3  * Description: all the global variables and thread handling for
4  *              those variables is handled by this module.
5  *
6  * The bottom of this file is automatically generated by build_glob.py
7  * based on the description file global.data
8  *
9  * Copy: See Copyright for the status of this software.
10  *
11  * Author: Gary Pennington <Gary.Pennington@uk.sun.com>, Daniel Veillard
12  */
13
14 #ifndef __XML_GLOBALS_H
15 #define __XML_GLOBALS_H
16
17 #include <libxml/xmlversion.h>
18 #include <libxml/parser.h>
19 #include <libxml/xmlerror.h>
20 #include <libxml/SAX.h>
21 #include <libxml/SAX2.h>
22 #include <libxml/xmlmemory.h>
23
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27
28 XMLPUBFUN void XMLCALL xmlInitGlobals(void);
29 XMLPUBFUN void XMLCALL xmlCleanupGlobals(void);
30
31 /**
32  * xmlParserInputBufferCreateFilenameFunc:
33  * @URI: the URI to read from
34  * @enc: the requested source encoding
35  *
36  * Signature for the function doing the lookup for a suitable input method
37  * corresponding to an URI.
38  *
39  * Returns the new xmlParserInputBufferPtr in case of success or NULL if no
40  *         method was found.
41  */
42 typedef xmlParserInputBufferPtr (*xmlParserInputBufferCreateFilenameFunc) (const char *URI, xmlCharEncoding enc);
43
44 /**
45  * xmlOutputBufferCreateFilenameFunc:
46  * @URI: the URI to write to
47  * @enc: the requested target encoding
48  *
49  * Signature for the function doing the lookup for a suitable output method
50  * corresponding to an URI.
51  *
52  * Returns the new xmlOutputBufferPtr in case of success or NULL if no
53  *         method was found.
54  */
55 typedef xmlOutputBufferPtr (*xmlOutputBufferCreateFilenameFunc) (const char *URI, xmlCharEncodingHandlerPtr encoder, int compression);
56
57 XMLPUBFUN xmlParserInputBufferCreateFilenameFunc
58 XMLCALL xmlParserInputBufferCreateFilenameDefault (xmlParserInputBufferCreateFilenameFunc func);
59 XMLPUBFUN xmlOutputBufferCreateFilenameFunc
60 XMLCALL xmlOutputBufferCreateFilenameDefault (xmlOutputBufferCreateFilenameFunc func);
61
62 /*
63  * Externally global symbols which need to be protected for backwards
64  * compatibility support.
65  */
66
67 #undef  docbDefaultSAXHandler
68 #undef  htmlDefaultSAXHandler
69 #undef  oldXMLWDcompatibility
70 #undef  xmlBufferAllocScheme
71 #undef  xmlDefaultBufferSize
72 #undef  xmlDefaultSAXHandler
73 #undef  xmlDefaultSAXLocator
74 #undef  xmlDoValidityCheckingDefaultValue
75 #undef  xmlFree
76 #undef  xmlGenericError
77 #undef  xmlStructuredError
78 #undef  xmlGenericErrorContext
79 #undef  xmlStructuredErrorContext
80 #undef  xmlGetWarningsDefaultValue
81 #undef  xmlIndentTreeOutput
82 #undef  xmlTreeIndentString
83 #undef  xmlKeepBlanksDefaultValue
84 #undef  xmlLineNumbersDefaultValue
85 #undef  xmlLoadExtDtdDefaultValue
86 #undef  xmlMalloc
87 #undef  xmlMallocAtomic
88 #undef  xmlMemStrdup
89 #undef  xmlParserDebugEntities
90 #undef  xmlParserVersion
91 #undef  xmlPedanticParserDefaultValue
92 #undef  xmlRealloc
93 #undef  xmlSaveNoEmptyTags
94 #undef  xmlSubstituteEntitiesDefaultValue
95 #undef  xmlRegisterNodeDefaultValue
96 #undef  xmlDeregisterNodeDefaultValue
97 #undef  xmlLastError
98 #undef  xmlParserInputBufferCreateFilenameValue
99 #undef  xmlOutputBufferCreateFilenameValue
100
101 /**
102  * xmlRegisterNodeFunc:
103  * @node: the current node
104  *
105  * Signature for the registration callback of a created node
106  */
107 typedef void (*xmlRegisterNodeFunc) (xmlNodePtr node);
108 /**
109  * xmlDeregisterNodeFunc:
110  * @node: the current node
111  *
112  * Signature for the deregistration callback of a discarded node
113  */
114 typedef void (*xmlDeregisterNodeFunc) (xmlNodePtr node);
115
116 typedef struct _xmlGlobalState xmlGlobalState;
117 typedef xmlGlobalState *xmlGlobalStatePtr;
118 struct _xmlGlobalState
119 {
120         const char *xmlParserVersion;
121
122         xmlSAXLocator xmlDefaultSAXLocator;
123         xmlSAXHandlerV1 xmlDefaultSAXHandler;
124         xmlSAXHandlerV1 docbDefaultSAXHandler;
125         xmlSAXHandlerV1 htmlDefaultSAXHandler;
126
127         xmlFreeFunc xmlFree;
128         xmlMallocFunc xmlMalloc;
129         xmlStrdupFunc xmlMemStrdup;
130         xmlReallocFunc xmlRealloc;
131
132         xmlGenericErrorFunc xmlGenericError;
133         xmlStructuredErrorFunc xmlStructuredError;
134         void *xmlGenericErrorContext;
135
136         int oldXMLWDcompatibility;
137
138         xmlBufferAllocationScheme xmlBufferAllocScheme;
139         int xmlDefaultBufferSize;
140
141         int xmlSubstituteEntitiesDefaultValue;
142         int xmlDoValidityCheckingDefaultValue;
143         int xmlGetWarningsDefaultValue;
144         int xmlKeepBlanksDefaultValue;
145         int xmlLineNumbersDefaultValue;
146         int xmlLoadExtDtdDefaultValue;
147         int xmlParserDebugEntities;
148         int xmlPedanticParserDefaultValue;
149
150         int xmlSaveNoEmptyTags;
151         int xmlIndentTreeOutput;
152         const char *xmlTreeIndentString;
153
154         xmlRegisterNodeFunc xmlRegisterNodeDefaultValue;
155         xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue;
156
157         xmlMallocFunc xmlMallocAtomic;
158         xmlError xmlLastError;
159
160         xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue;
161         xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue;
162
163         void *xmlStructuredErrorContext;
164 };
165
166 #ifdef __cplusplus
167 }
168 #endif
169 #include <libxml/threads.h>
170 #ifdef __cplusplus
171 extern "C" {
172 #endif
173
174 XMLPUBFUN void XMLCALL  xmlInitializeGlobalState(xmlGlobalStatePtr gs);
175
176 XMLPUBFUN void XMLCALL xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler);
177
178 XMLPUBFUN void XMLCALL xmlThrDefSetStructuredErrorFunc(void *ctx, xmlStructuredErrorFunc handler);
179
180 XMLPUBFUN xmlRegisterNodeFunc XMLCALL xmlRegisterNodeDefault(xmlRegisterNodeFunc func);
181 XMLPUBFUN xmlRegisterNodeFunc XMLCALL xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func);
182 XMLPUBFUN xmlDeregisterNodeFunc XMLCALL xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func);
183 XMLPUBFUN xmlDeregisterNodeFunc XMLCALL xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func);
184
185 XMLPUBFUN xmlOutputBufferCreateFilenameFunc XMLCALL
186         xmlThrDefOutputBufferCreateFilenameDefault(xmlOutputBufferCreateFilenameFunc func);
187 XMLPUBFUN xmlParserInputBufferCreateFilenameFunc XMLCALL
188         xmlThrDefParserInputBufferCreateFilenameDefault(xmlParserInputBufferCreateFilenameFunc func);
189
190 /** DOC_DISABLE */
191 /*
192  * In general the memory allocation entry points are not kept
193  * thread specific but this can be overridden by LIBXML_THREAD_ALLOC_ENABLED
194  *    - xmlMalloc
195  *    - xmlMallocAtomic
196  *    - xmlRealloc
197  *    - xmlMemStrdup
198  *    - xmlFree
199  */
200
201 #ifdef LIBXML_THREAD_ALLOC_ENABLED
202 #ifdef LIBXML_THREAD_ENABLED
203 XMLPUBFUN  xmlMallocFunc * XMLCALL __xmlMalloc(void);
204 #define xmlMalloc \
205 (*(__xmlMalloc()))
206 #else
207 XMLPUBVAR xmlMallocFunc xmlMalloc;
208 #endif
209
210 #ifdef LIBXML_THREAD_ENABLED
211 XMLPUBFUN  xmlMallocFunc * XMLCALL __xmlMallocAtomic(void);
212 #define xmlMallocAtomic \
213 (*(__xmlMallocAtomic()))
214 #else
215 XMLPUBVAR xmlMallocFunc xmlMallocAtomic;
216 #endif
217
218 #ifdef LIBXML_THREAD_ENABLED
219 XMLPUBFUN  xmlReallocFunc * XMLCALL __xmlRealloc(void);
220 #define xmlRealloc \
221 (*(__xmlRealloc()))
222 #else
223 XMLPUBVAR xmlReallocFunc xmlRealloc;
224 #endif
225
226 #ifdef LIBXML_THREAD_ENABLED
227 XMLPUBFUN  xmlFreeFunc * XMLCALL __xmlFree(void);
228 #define xmlFree \
229 (*(__xmlFree()))
230 #else
231 XMLPUBVAR xmlFreeFunc xmlFree;
232 #endif
233
234 #ifdef LIBXML_THREAD_ENABLED
235 XMLPUBFUN  xmlStrdupFunc * XMLCALL __xmlMemStrdup(void);
236 #define xmlMemStrdup \
237 (*(__xmlMemStrdup()))
238 #else
239 XMLPUBVAR xmlStrdupFunc xmlMemStrdup;
240 #endif
241
242 #else /* !LIBXML_THREAD_ALLOC_ENABLED */
243 XMLPUBVAR xmlMallocFunc xmlMalloc;
244 XMLPUBVAR xmlMallocFunc xmlMallocAtomic;
245 XMLPUBVAR xmlReallocFunc xmlRealloc;
246 XMLPUBVAR xmlFreeFunc xmlFree;
247 XMLPUBVAR xmlStrdupFunc xmlMemStrdup;
248 #endif /* LIBXML_THREAD_ALLOC_ENABLED */
249
250 #ifdef LIBXML_DOCB_ENABLED
251 XMLPUBFUN  xmlSAXHandlerV1 * XMLCALL __docbDefaultSAXHandler(void);
252 #ifdef LIBXML_THREAD_ENABLED
253 #define docbDefaultSAXHandler \
254 (*(__docbDefaultSAXHandler()))
255 #else
256 XMLPUBVAR xmlSAXHandlerV1 docbDefaultSAXHandler;
257 #endif
258 #endif
259
260 #ifdef LIBXML_HTML_ENABLED
261 XMLPUBFUN xmlSAXHandlerV1 * XMLCALL __htmlDefaultSAXHandler(void);
262 #ifdef LIBXML_THREAD_ENABLED
263 #define htmlDefaultSAXHandler \
264 (*(__htmlDefaultSAXHandler()))
265 #else
266 XMLPUBVAR xmlSAXHandlerV1 htmlDefaultSAXHandler;
267 #endif
268 #endif
269
270 XMLPUBFUN xmlError * XMLCALL __xmlLastError(void);
271 #ifdef LIBXML_THREAD_ENABLED
272 #define xmlLastError \
273 (*(__xmlLastError()))
274 #else
275 XMLPUBVAR xmlError xmlLastError;
276 #endif
277
278 /*
279  * Everything starting from the line below is
280  * Automatically generated by build_glob.py.
281  * Do not modify the previous line.
282  */
283
284
285 XMLPUBFUN int * XMLCALL __oldXMLWDcompatibility(void);
286 #ifdef LIBXML_THREAD_ENABLED
287 #define oldXMLWDcompatibility \
288 (*(__oldXMLWDcompatibility()))
289 #else
290 XMLPUBVAR int oldXMLWDcompatibility;
291 #endif
292
293 XMLPUBFUN xmlBufferAllocationScheme * XMLCALL __xmlBufferAllocScheme(void);
294 #ifdef LIBXML_THREAD_ENABLED
295 #define xmlBufferAllocScheme \
296 (*(__xmlBufferAllocScheme()))
297 #else
298 XMLPUBVAR xmlBufferAllocationScheme xmlBufferAllocScheme;
299 #endif
300 XMLPUBFUN xmlBufferAllocationScheme XMLCALL xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v);
301
302 XMLPUBFUN int * XMLCALL __xmlDefaultBufferSize(void);
303 #ifdef LIBXML_THREAD_ENABLED
304 #define xmlDefaultBufferSize \
305 (*(__xmlDefaultBufferSize()))
306 #else
307 XMLPUBVAR int xmlDefaultBufferSize;
308 #endif
309 XMLPUBFUN int XMLCALL xmlThrDefDefaultBufferSize(int v);
310
311 XMLPUBFUN xmlSAXHandlerV1 * XMLCALL __xmlDefaultSAXHandler(void);
312 #ifdef LIBXML_THREAD_ENABLED
313 #define xmlDefaultSAXHandler \
314 (*(__xmlDefaultSAXHandler()))
315 #else
316 XMLPUBVAR xmlSAXHandlerV1 xmlDefaultSAXHandler;
317 #endif
318
319 XMLPUBFUN xmlSAXLocator * XMLCALL __xmlDefaultSAXLocator(void);
320 #ifdef LIBXML_THREAD_ENABLED
321 #define xmlDefaultSAXLocator \
322 (*(__xmlDefaultSAXLocator()))
323 #else
324 XMLPUBVAR xmlSAXLocator xmlDefaultSAXLocator;
325 #endif
326
327 XMLPUBFUN int * XMLCALL __xmlDoValidityCheckingDefaultValue(void);
328 #ifdef LIBXML_THREAD_ENABLED
329 #define xmlDoValidityCheckingDefaultValue \
330 (*(__xmlDoValidityCheckingDefaultValue()))
331 #else
332 XMLPUBVAR int xmlDoValidityCheckingDefaultValue;
333 #endif
334 XMLPUBFUN int XMLCALL xmlThrDefDoValidityCheckingDefaultValue(int v);
335
336 XMLPUBFUN xmlGenericErrorFunc * XMLCALL __xmlGenericError(void);
337 #ifdef LIBXML_THREAD_ENABLED
338 #define xmlGenericError \
339 (*(__xmlGenericError()))
340 #else
341 XMLPUBVAR xmlGenericErrorFunc xmlGenericError;
342 #endif
343
344 XMLPUBFUN xmlStructuredErrorFunc * XMLCALL __xmlStructuredError(void);
345 #ifdef LIBXML_THREAD_ENABLED
346 #define xmlStructuredError \
347 (*(__xmlStructuredError()))
348 #else
349 XMLPUBVAR xmlStructuredErrorFunc xmlStructuredError;
350 #endif
351
352 XMLPUBFUN void * * XMLCALL __xmlGenericErrorContext(void);
353 #ifdef LIBXML_THREAD_ENABLED
354 #define xmlGenericErrorContext \
355 (*(__xmlGenericErrorContext()))
356 #else
357 XMLPUBVAR void * xmlGenericErrorContext;
358 #endif
359
360 XMLPUBFUN void * * XMLCALL __xmlStructuredErrorContext(void);
361 #ifdef LIBXML_THREAD_ENABLED
362 #define xmlStructuredErrorContext \
363 (*(__xmlStructuredErrorContext()))
364 #else
365 XMLPUBVAR void * xmlStructuredErrorContext;
366 #endif
367
368 XMLPUBFUN int * XMLCALL __xmlGetWarningsDefaultValue(void);
369 #ifdef LIBXML_THREAD_ENABLED
370 #define xmlGetWarningsDefaultValue \
371 (*(__xmlGetWarningsDefaultValue()))
372 #else
373 XMLPUBVAR int xmlGetWarningsDefaultValue;
374 #endif
375 XMLPUBFUN int XMLCALL xmlThrDefGetWarningsDefaultValue(int v);
376
377 XMLPUBFUN int * XMLCALL __xmlIndentTreeOutput(void);
378 #ifdef LIBXML_THREAD_ENABLED
379 #define xmlIndentTreeOutput \
380 (*(__xmlIndentTreeOutput()))
381 #else
382 XMLPUBVAR int xmlIndentTreeOutput;
383 #endif
384 XMLPUBFUN int XMLCALL xmlThrDefIndentTreeOutput(int v);
385
386 XMLPUBFUN const char * * XMLCALL __xmlTreeIndentString(void);
387 #ifdef LIBXML_THREAD_ENABLED
388 #define xmlTreeIndentString \
389 (*(__xmlTreeIndentString()))
390 #else
391 XMLPUBVAR const char * xmlTreeIndentString;
392 #endif
393 XMLPUBFUN const char * XMLCALL xmlThrDefTreeIndentString(const char * v);
394
395 XMLPUBFUN int * XMLCALL __xmlKeepBlanksDefaultValue(void);
396 #ifdef LIBXML_THREAD_ENABLED
397 #define xmlKeepBlanksDefaultValue \
398 (*(__xmlKeepBlanksDefaultValue()))
399 #else
400 XMLPUBVAR int xmlKeepBlanksDefaultValue;
401 #endif
402 XMLPUBFUN int XMLCALL xmlThrDefKeepBlanksDefaultValue(int v);
403
404 XMLPUBFUN int * XMLCALL __xmlLineNumbersDefaultValue(void);
405 #ifdef LIBXML_THREAD_ENABLED
406 #define xmlLineNumbersDefaultValue \
407 (*(__xmlLineNumbersDefaultValue()))
408 #else
409 XMLPUBVAR int xmlLineNumbersDefaultValue;
410 #endif
411 XMLPUBFUN int XMLCALL xmlThrDefLineNumbersDefaultValue(int v);
412
413 XMLPUBFUN int * XMLCALL __xmlLoadExtDtdDefaultValue(void);
414 #ifdef LIBXML_THREAD_ENABLED
415 #define xmlLoadExtDtdDefaultValue \
416 (*(__xmlLoadExtDtdDefaultValue()))
417 #else
418 XMLPUBVAR int xmlLoadExtDtdDefaultValue;
419 #endif
420 XMLPUBFUN int XMLCALL xmlThrDefLoadExtDtdDefaultValue(int v);
421
422 XMLPUBFUN int * XMLCALL __xmlParserDebugEntities(void);
423 #ifdef LIBXML_THREAD_ENABLED
424 #define xmlParserDebugEntities \
425 (*(__xmlParserDebugEntities()))
426 #else
427 XMLPUBVAR int xmlParserDebugEntities;
428 #endif
429 XMLPUBFUN int XMLCALL xmlThrDefParserDebugEntities(int v);
430
431 XMLPUBFUN const char * * XMLCALL __xmlParserVersion(void);
432 #ifdef LIBXML_THREAD_ENABLED
433 #define xmlParserVersion \
434 (*(__xmlParserVersion()))
435 #else
436 XMLPUBVAR const char * xmlParserVersion;
437 #endif
438
439 XMLPUBFUN int * XMLCALL __xmlPedanticParserDefaultValue(void);
440 #ifdef LIBXML_THREAD_ENABLED
441 #define xmlPedanticParserDefaultValue \
442 (*(__xmlPedanticParserDefaultValue()))
443 #else
444 XMLPUBVAR int xmlPedanticParserDefaultValue;
445 #endif
446 XMLPUBFUN int XMLCALL xmlThrDefPedanticParserDefaultValue(int v);
447
448 XMLPUBFUN int * XMLCALL __xmlSaveNoEmptyTags(void);
449 #ifdef LIBXML_THREAD_ENABLED
450 #define xmlSaveNoEmptyTags \
451 (*(__xmlSaveNoEmptyTags()))
452 #else
453 XMLPUBVAR int xmlSaveNoEmptyTags;
454 #endif
455 XMLPUBFUN int XMLCALL xmlThrDefSaveNoEmptyTags(int v);
456
457 XMLPUBFUN int * XMLCALL __xmlSubstituteEntitiesDefaultValue(void);
458 #ifdef LIBXML_THREAD_ENABLED
459 #define xmlSubstituteEntitiesDefaultValue \
460 (*(__xmlSubstituteEntitiesDefaultValue()))
461 #else
462 XMLPUBVAR int xmlSubstituteEntitiesDefaultValue;
463 #endif
464 XMLPUBFUN int XMLCALL xmlThrDefSubstituteEntitiesDefaultValue(int v);
465
466 XMLPUBFUN xmlRegisterNodeFunc * XMLCALL __xmlRegisterNodeDefaultValue(void);
467 #ifdef LIBXML_THREAD_ENABLED
468 #define xmlRegisterNodeDefaultValue \
469 (*(__xmlRegisterNodeDefaultValue()))
470 #else
471 XMLPUBVAR xmlRegisterNodeFunc xmlRegisterNodeDefaultValue;
472 #endif
473
474 XMLPUBFUN xmlDeregisterNodeFunc * XMLCALL __xmlDeregisterNodeDefaultValue(void);
475 #ifdef LIBXML_THREAD_ENABLED
476 #define xmlDeregisterNodeDefaultValue \
477 (*(__xmlDeregisterNodeDefaultValue()))
478 #else
479 XMLPUBVAR xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue;
480 #endif
481
482 XMLPUBFUN xmlParserInputBufferCreateFilenameFunc * XMLCALL __xmlParserInputBufferCreateFilenameValue(void);
483 #ifdef LIBXML_THREAD_ENABLED
484 #define xmlParserInputBufferCreateFilenameValue \
485 (*(__xmlParserInputBufferCreateFilenameValue()))
486 #else
487 XMLPUBVAR xmlParserInputBufferCreateFilenameFunc xmlParserInputBufferCreateFilenameValue;
488 #endif
489
490 XMLPUBFUN xmlOutputBufferCreateFilenameFunc * XMLCALL __xmlOutputBufferCreateFilenameValue(void);
491 #ifdef LIBXML_THREAD_ENABLED
492 #define xmlOutputBufferCreateFilenameValue \
493 (*(__xmlOutputBufferCreateFilenameValue()))
494 #else
495 XMLPUBVAR xmlOutputBufferCreateFilenameFunc xmlOutputBufferCreateFilenameValue;
496 #endif
497
498 #ifdef __cplusplus
499 }
500 #endif
501
502 #endif /* __XML_GLOBALS_H */