summaryrefslogtreecommitdiff
path: root/3rdparty/SDL/src/thread/win32/win_ce_semaphore.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-05-31 08:12:40 +0800
committerchai <chaifix@163.com>2018-05-31 08:12:40 +0800
commitad8ffb96789f90180982b344540870a2d4e2d60b (patch)
tree2bf2e124cb0130acaad1dcce2034ff2847b3d0a2 /3rdparty/SDL/src/thread/win32/win_ce_semaphore.h
Diffstat (limited to '3rdparty/SDL/src/thread/win32/win_ce_semaphore.h')
-rw-r--r--3rdparty/SDL/src/thread/win32/win_ce_semaphore.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/3rdparty/SDL/src/thread/win32/win_ce_semaphore.h b/3rdparty/SDL/src/thread/win32/win_ce_semaphore.h
new file mode 100644
index 0000000..af2d7b6
--- /dev/null
+++ b/3rdparty/SDL/src/thread/win32/win_ce_semaphore.h
@@ -0,0 +1,22 @@
+/* win_ce_semaphore.h - header file to go with win_ce_semaphore.c */
+
+typedef struct _SYNCH_HANDLE_STRUCTURE {
+ HANDLE hEvent;
+ HANDLE hMutex;
+ HANDLE hSemph;
+ LONG MaxCount;
+ volatile LONG CurCount;
+ LPCTSTR lpName;
+} SYNCH_HANDLE_STRUCTURE, *SYNCHHANDLE;
+
+#define SYNCH_HANDLE_SIZE sizeof (SYNCH_HANDLE_STRUCTURE)
+
+ /* Error codes - all must have bit 29 set */
+#define SYNCH_ERROR 0X20000000 /* EXERCISE - REFINE THE ERROR NUMBERS */
+
+extern SYNCHHANDLE CreateSemaphoreCE (LPSECURITY_ATTRIBUTES, LONG, LONG, LPCTSTR);
+
+extern BOOL ReleaseSemaphoreCE (SYNCHHANDLE, LONG, LPLONG);
+extern DWORD WaitForSemaphoreCE (SYNCHHANDLE, DWORD);
+
+extern BOOL CloseSynchHandle (SYNCHHANDLE);