Alexandre Julliard : vkd3d-utils: Implement the event functions for Windows.
Alexandre Julliard
julliard at winehq.org
Fri Feb 4 16:06:37 CST 2022
Module: vkd3d
Branch: master
Commit: 923ea7bb1e071f6a14456641f731b9d649657992
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=923ea7bb1e071f6a14456641f731b9d649657992
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Feb 4 12:07:30 2022 +0100
vkd3d-utils: Implement the event functions for Windows.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
libs/vkd3d-utils/vkd3d_utils_main.c | 37 ++++++++++++++++++++++++++++++++++
libs/vkd3d-utils/vkd3d_utils_private.h | 8 --------
2 files changed, 37 insertions(+), 8 deletions(-)
diff --git a/libs/vkd3d-utils/vkd3d_utils_main.c b/libs/vkd3d-utils/vkd3d_utils_main.c
index 9c968cc..7fb042c 100644
--- a/libs/vkd3d-utils/vkd3d_utils_main.c
+++ b/libs/vkd3d-utils/vkd3d_utils_main.c
@@ -327,6 +327,41 @@ HRESULT WINAPI D3DPreprocess(const void *data, SIZE_T size, const char *filename
}
/* Events */
+
+#ifdef _WIN32
+
+HANDLE vkd3d_create_event(void)
+{
+ return CreateEventA(NULL, FALSE, FALSE, NULL);
+}
+
+HRESULT vkd3d_signal_event(HANDLE event)
+{
+ SetEvent(event);
+ return S_OK;
+}
+
+unsigned int vkd3d_wait_event(HANDLE event, unsigned int milliseconds)
+{
+ return WaitForSingleObject(event, milliseconds);
+}
+
+void vkd3d_destroy_event(HANDLE event)
+{
+ CloseHandle(event);
+}
+
+#else /* _WIN32 */
+
+#include <pthread.h>
+
+struct vkd3d_event
+{
+ pthread_mutex_t mutex;
+ pthread_cond_t cond;
+ BOOL is_signaled;
+};
+
HANDLE vkd3d_create_event(void)
{
struct vkd3d_event *event;
@@ -434,6 +469,8 @@ void vkd3d_destroy_event(HANDLE event)
vkd3d_free(impl);
}
+#endif /* _WIN32 */
+
HRESULT WINAPI D3DCreateBlob(SIZE_T data_size, ID3D10Blob **blob)
{
HRESULT hr;
diff --git a/libs/vkd3d-utils/vkd3d_utils_private.h b/libs/vkd3d-utils/vkd3d_utils_private.h
index 06ac7e6..1b8254b 100644
--- a/libs/vkd3d-utils/vkd3d_utils_private.h
+++ b/libs/vkd3d-utils/vkd3d_utils_private.h
@@ -23,7 +23,6 @@
#define NONAMELESSUNION
#define VK_NO_PROTOTYPES
-#include <pthread.h>
#include <vkd3d.h>
#include <vkd3d_shader.h>
#include <vkd3d_d3dcompiler.h>
@@ -32,11 +31,4 @@
#include "vkd3d_memory.h"
#include <vkd3d_utils.h>
-struct vkd3d_event
-{
- pthread_mutex_t mutex;
- pthread_cond_t cond;
- BOOL is_signaled;
-};
-
#endif /* __VKD3D_UTILS_PRIVATE_H */
More information about the wine-cvs
mailing list