epoc32/include/stdapis/libxml2/libxml2_threads.h
branchSymbian3
changeset 4 837f303aceeb
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/stdapis/libxml2/libxml2_threads.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -0,0 +1,84 @@
     1.4 +/*
     1.5 + * Summary: interfaces for thread handling
     1.6 + * Description: set of generic threading related routines
     1.7 + *              should work with pthreads, Windows native or TLS threads
     1.8 + *
     1.9 + * Copy: See Copyright for the status of this software.
    1.10 + *
    1.11 + * Author: Daniel Veillard
    1.12 + * Portion Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies). All rights reserved. 
    1.13 + */
    1.14 +
    1.15 +/** @file
    1.16 +@publishedAll
    1.17 +@released
    1.18 +*/
    1.19 +
    1.20 +#ifndef XML_THREADS_H
    1.21 +#define XML_THREADS_H
    1.22 +
    1.23 +#include <libxml2_globals.h>
    1.24 +
    1.25 +#ifdef __cplusplus
    1.26 +extern "C" {
    1.27 +#endif
    1.28 +
    1.29 +/*
    1.30 + * xmlMutex are a simple mutual exception locks.
    1.31 + */
    1.32 +typedef struct _xmlMutex xmlMutex;
    1.33 +typedef xmlMutex *xmlMutexPtr;
    1.34 +
    1.35 +/*
    1.36 + * xmlRMutex are reentrant mutual exception locks.
    1.37 + */
    1.38 +typedef struct _xmlRMutex xmlRMutex;
    1.39 +typedef xmlRMutex *xmlRMutexPtr;
    1.40 +
    1.41 +XMLPUBFUN xmlMutexPtr XMLCALL
    1.42 +                        xmlNewMutex     (void);
    1.43 +XMLPUBFUN void XMLCALL
    1.44 +                        xmlMutexLock    (xmlMutexPtr tok);
    1.45 +XMLPUBFUN void XMLCALL
    1.46 +                        xmlMutexUnlock  (xmlMutexPtr tok);
    1.47 +XMLPUBFUN void XMLCALL
    1.48 +                        xmlFreeMutex    (xmlMutexPtr tok);
    1.49 +
    1.50 +XMLPUBFUN xmlRMutexPtr XMLCALL
    1.51 +                        xmlNewRMutex    (void);
    1.52 +XMLPUBFUN void XMLCALL
    1.53 +                        xmlRMutexLock   (xmlRMutexPtr tok);
    1.54 +XMLPUBFUN void XMLCALL
    1.55 +                        xmlRMutexUnlock (xmlRMutexPtr tok);
    1.56 +
    1.57 +
    1.58 +#ifndef XMLENGINE_EXCLUDE_UNUSED
    1.59 +XMLPUBFUN void XMLCALL
    1.60 +                        xmlFreeRMutex   (xmlRMutexPtr tok);
    1.61 +#endif /* ifndef XMLENGINE_EXCLUDE_UNUSED */
    1.62 +
    1.63 +/*
    1.64 + * Library wide APIs.
    1.65 + */
    1.66 +XMLPUBFUN void XMLCALL
    1.67 +                        xmlInitThreads  (void);
    1.68 +XMLPUBFUN void XMLCALL
    1.69 +                        xmlLockLibrary  (void);
    1.70 +XMLPUBFUN void XMLCALL
    1.71 +                        xmlUnlockLibrary(void);
    1.72 +XMLPUBFUN int XMLCALL
    1.73 +                        xmlGetThreadId  (void);
    1.74 +XMLPUBFUN int XMLCALL
    1.75 +                        xmlIsMainThread (void);
    1.76 +XMLPUBFUN void XMLCALL
    1.77 +                        xmlCleanupThreads(void);
    1.78 +XMLPUBFUN xmlGlobalStatePtr XMLCALL
    1.79 +                        xmlGetGlobalState(void);
    1.80 +
    1.81 +#ifdef __cplusplus
    1.82 +}
    1.83 +#endif
    1.84 +
    1.85 +
    1.86 +#endif /* XML_THREADS_H */
    1.87 +