summaryrefslogtreecommitdiffstatsci
path: root/src/vkvg_device_internal.h
diff options
context:
space:
mode:
authorJean-Philippe Bruyère <jp_bruyere@hotmail.com>2022-01-26 22:01:48 +0100
committerJean-Philippe Bruyère <jp_bruyere@hotmail.com>2022-01-26 22:01:48 +0100
commit19abdef1af4b28e40ba6b994ea22e92b7dde1d8f (patch)
treeffdc7f4d10e351ee1856158cc14ac0277542aa1b /src/vkvg_device_internal.h
parent88c83b6b9b465a670f4989bbe21bd2e5f9eb2dd0 (diff)
test threadctxthreadctxtests
Diffstat (limited to 'src/vkvg_device_internal.h')
-rw-r--r--src/vkvg_device_internal.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/vkvg_device_internal.h b/src/vkvg_device_internal.h
index 376b9c2..be1d1b4 100644
--- a/src/vkvg_device_internal.h
+++ b/src/vkvg_device_internal.h
@@ -25,6 +25,7 @@
#include "vkvg_internal.h"
#include "vkvg.h"
#include "vkvg_fonts.h"
+#include "vkvg_sync_context_internal.h"
#define STENCIL_FILL_BIT 0x1
#define STENCIL_CLIP_BIT 0x2
@@ -63,8 +64,8 @@ typedef struct _vkvg_device_t{
VkFormat pngStagFormat; /**< Supported vulkan image format png write staging img */
VkImageTiling pngStagTiling; /**< tiling for the blit operation */
- vkvg_queue_guard gQBeforeSubmitGuard;
- vkvg_queue_guard gQAfterSubmitGuard;
+ vkvg_queue_guard gQLockGuard;
+ vkvg_queue_guard gQUnlockGuard;
void* gQGuardUserData;
VkhQueue gQueue; /**< Vulkan Queue with Graphic flag */
@@ -75,7 +76,9 @@ typedef struct _vkvg_device_t{
uint32_t references; /**< Reference count, prevent destroying device if still in use */
VkCommandPool cmdPool; /**< Global command pool for processing on surfaces without context */
VkCommandBuffer cmd; /**< Global command buffer */
- VkFence fence; /**< this fence is kept signaled when idle, wait and reset are called before each recording. */
+ vkvg_sync_context syncCtx; /**< device cmds sync context */
+ //vkvg_sync_context* gQLastAwaitedSync; /**< Last sync context whose signal semaphore is waited in cmd submission */
+ vkvgSync gQLastSignaledSync; /**< Last sync context submitted with signal semaphore */
VkPipeline pipe_OVER; /**< default operator */
VkPipeline pipe_SUB;
@@ -124,5 +127,5 @@ void _createDescriptorSetLayout (VkvgDevice dev);
void _flush_all_contexes (VkvgDevice dev);
void _wait_idle (VkvgDevice dev);
void _wait_and_reset_device_fence (VkvgDevice dev);
-void _submit_cmd (VkvgDevice dev, VkCommandBuffer* cmd, VkFence fence);
+void _submit_cmd (VkvgDevice dev, VkCommandBuffer* cmd, vkvg_sync_context *sync);
#endif