Add qemu 2.4.0
[kvmfornfv.git] / qemu / include / qemu / thread-win32.h
1 #ifndef __QEMU_THREAD_WIN32_H
2 #define __QEMU_THREAD_WIN32_H 1
3 #include "windows.h"
4
5 struct QemuMutex {
6     CRITICAL_SECTION lock;
7     LONG owner;
8 };
9
10 struct QemuCond {
11     LONG waiters, target;
12     HANDLE sema;
13     HANDLE continue_event;
14 };
15
16 struct QemuSemaphore {
17     HANDLE sema;
18 };
19
20 struct QemuEvent {
21     HANDLE event;
22 };
23
24 typedef struct QemuThreadData QemuThreadData;
25 struct QemuThread {
26     QemuThreadData *data;
27     unsigned tid;
28 };
29
30 /* Only valid for joinable threads.  */
31 HANDLE qemu_thread_get_handle(QemuThread *thread);
32
33 #endif