summaryrefslogtreecommitdiffstats
path: root/src/rccmutex.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/rccmutex.h')
-rw-r--r--src/rccmutex.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/rccmutex.h b/src/rccmutex.h
new file mode 100644
index 0000000..8585621
--- /dev/null
+++ b/src/rccmutex.h
@@ -0,0 +1,27 @@
+#ifndef _RCC_MUTEX_H
+#define _RCC_MUTEX_H
+
+#include "../config.h"
+
+#ifdef HAVE_PTHREAD
+# include <pthread.h>
+#endif /* HAVE_PTHREAD */
+
+struct rcc_mutex_t {
+#ifdef HAVE_PTHREAD
+ pthread_mutex_t mutex;
+#else
+ unsigned char mutex;
+#endif /* HAVE_PTHREAD */
+};
+typedef struct rcc_mutex_t rcc_mutex_s;
+typedef struct rcc_mutex_t *rcc_mutex;
+
+rcc_mutex rccMutexCreate();
+void rccMutexFree(rcc_mutex mutex);
+
+int rccMutexLock(rcc_mutex mutex);
+int rccMutexTryLock(rcc_mutex mutex);
+void rccMutexUnLock(rcc_mutex mutex);
+
+#endif /* _RCC_MUTEX_H */