GulkanSwapchain * gulkan_swapchain_new (GulkanClient *client,VkSurfaceKHR surface,VkPresentModeKHR present_mode,VkFormat format,VkColorSpaceKHR colorspace);
gboolean gulkan_swapchain_acquire (GulkanSwapchain *self,VkSemaphore signal_semaphore,uint32_t *index);
gboolean gulkan_swapchain_present (GulkanSwapchain *self,VkSemaphore *wait_semaphore,uint32_t index);
void gulkan_swapchain_get_images (GulkanSwapchain *self,VkImage *swap_chain_images);
gboolean gulkan_swapchain_reset_surface (GulkanSwapchain *self,VkSurfaceKHR surface);