X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;ds=sidebyside;f=src%2Fvk.h;h=b9a8fb008230982eb891b72249639e08934cea72;hb=refs%2Fheads%2Fmaster;hp=cc589488b40bd5c5b34d062d42045439fd7b7609;hpb=6d36eee057f3d8504e337e6000c664683c2989ab;p=vktest3 diff --git a/src/vk.h b/src/vk.h index cc58948..b9a8fb0 100644 --- a/src/vk.h +++ b/src/vk.h @@ -57,8 +57,14 @@ void vk_cleanup(void); int vk_reshape(int xsz, int ysz); +/* returns the number of swapchain images */ +int vk_num_swap_images(void); +VkImageView vk_swap_image(int idx); /* returns the image index, or -1 on failure. Pass optional semaphore to signal */ -int vk_next_image(VkSemaphore sem); +int vk_next_swap_image(VkSemaphore sem); + +int vk_submit(VkQueue q, VkCommandBuffer cmdbuf, VkSemaphore semwait, VkSemaphore semsig); +int vk_present(VkQueue q, int imgid, VkSemaphore semwait); int vk_find_qfamily(unsigned int flags); VkQueue vk_getq_fam(int fam, int n); @@ -66,6 +72,8 @@ VkQueue vk_getq(unsigned int flags, int n); VkCommandBuffer vk_create_cmdbuf_fam(int qfam, int level); VkCommandBuffer vk_create_cmdbuf(unsigned int qflags, int level); +/* return one of the swap-chain command buffers */ +VkCommandBuffer vk_get_cmdbuf(int imgid); int vk_create_rpass(void); void vk_free_rpass(int rp); @@ -112,5 +120,7 @@ void vk_free_shader(VkShaderModule sdr); VkSemaphore vk_create_sem(void); void vk_free_sem(VkSemaphore sem); +/* random helpers */ +void vk_rect(VkRect2D *r, int x, int y, int w, int h); #endif /* VK_H_ */