summaryrefslogtreecommitdiff
path: root/Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h
diff options
context:
space:
mode:
authorIra Rice <irarice@gmail.com>2009-02-13 00:49:30 -0700
committerIra Rice <irarice@gmail.com>2009-02-13 00:49:30 -0700
commit35d95932256d615da0599bad8acdbf91777962b0 (patch)
tree48023e37d395751ae5b20a192492a097c4b9f9f9 /Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h
parentb22ac47b467684e0cd9b5497f2bd7074ead377f4 (diff)
downloadmana-35d95932256d615da0599bad8acdbf91777962b0.tar.gz
mana-35d95932256d615da0599bad8acdbf91777962b0.tar.bz2
mana-35d95932256d615da0599bad8acdbf91777962b0.tar.xz
mana-35d95932256d615da0599bad8acdbf91777962b0.zip
Added in mac build support, contributed to us by allenmoatallen> from
Legends of Mazzeroth. Signed-off-by: Ira Rice <irarice@gmail.com>
Diffstat (limited to 'Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h')
-rw-r--r--Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h b/Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h
new file mode 100644
index 00000000..f81f9824
--- /dev/null
+++ b/Frameworks/libxml.framework/Versions/2.6.30/Headers/threads.h
@@ -0,0 +1,84 @@
+/**
+ * Summary: interfaces for thread handling
+ * Description: set of generic threading related routines
+ * should work with pthreads, Windows native or TLS threads
+ *
+ * Copy: See Copyright for the status of this software.
+ *
+ * Author: Daniel Veillard
+ */
+
+#ifndef __XML_THREADS_H__
+#define __XML_THREADS_H__
+
+#include <libxml/xmlversion.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/*
+ * xmlMutex are a simple mutual exception locks.
+ */
+typedef struct _xmlMutex xmlMutex;
+typedef xmlMutex *xmlMutexPtr;
+
+/*
+ * xmlRMutex are reentrant mutual exception locks.
+ */
+typedef struct _xmlRMutex xmlRMutex;
+typedef xmlRMutex *xmlRMutexPtr;
+
+#ifdef __cplusplus
+}
+#endif
+#include <libxml/globals.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+XMLPUBFUN xmlMutexPtr XMLCALL
+ xmlNewMutex (void);
+XMLPUBFUN void XMLCALL
+ xmlMutexLock (xmlMutexPtr tok);
+XMLPUBFUN void XMLCALL
+ xmlMutexUnlock (xmlMutexPtr tok);
+XMLPUBFUN void XMLCALL
+ xmlFreeMutex (xmlMutexPtr tok);
+
+XMLPUBFUN xmlRMutexPtr XMLCALL
+ xmlNewRMutex (void);
+XMLPUBFUN void XMLCALL
+ xmlRMutexLock (xmlRMutexPtr tok);
+XMLPUBFUN void XMLCALL
+ xmlRMutexUnlock (xmlRMutexPtr tok);
+XMLPUBFUN void XMLCALL
+ xmlFreeRMutex (xmlRMutexPtr tok);
+
+/*
+ * Library wide APIs.
+ */
+XMLPUBFUN void XMLCALL
+ xmlInitThreads (void);
+XMLPUBFUN void XMLCALL
+ xmlLockLibrary (void);
+XMLPUBFUN void XMLCALL
+ xmlUnlockLibrary(void);
+XMLPUBFUN int XMLCALL
+ xmlGetThreadId (void);
+XMLPUBFUN int XMLCALL
+ xmlIsMainThread (void);
+XMLPUBFUN void XMLCALL
+ xmlCleanupThreads(void);
+XMLPUBFUN xmlGlobalStatePtr XMLCALL
+ xmlGetGlobalState(void);
+
+#if defined(HAVE_WIN32_THREADS) && !defined(HAVE_COMPILER_TLS) && defined(LIBXML_STATIC_FOR_DLL)
+int XMLCALL xmlDllMain(void *hinstDLL, unsigned long fdwReason, void *lpvReserved);
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+
+#endif /* __XML_THREADS_H__ */