diff options
Diffstat (limited to 'src/vulkan')
-rw-r--r-- | src/vulkan/wsi/wsi_common.h | 46 | ||||
-rw-r--r-- | src/vulkan/wsi/wsi_common_private.h | 46 |
2 files changed, 47 insertions, 45 deletions
diff --git a/src/vulkan/wsi/wsi_common.h b/src/vulkan/wsi/wsi_common.h index aab6ca1c27..d42e5e4453 100644 --- a/src/vulkan/wsi/wsi_common.h +++ b/src/vulkan/wsi/wsi_common.h @@ -49,32 +49,7 @@ struct wsi_memory_allocate_info { }; struct wsi_device; - -struct wsi_swapchain { - const struct wsi_device *wsi; - - VkDevice device; - VkAllocationCallbacks alloc; - VkFence fences[3]; - VkPresentModeKHR present_mode; - uint32_t image_count; - - bool use_prime_blit; - - /* Command pools, one per queue family */ - VkCommandPool *cmd_pools; - - VkResult (*destroy)(struct wsi_swapchain *swapchain, - const VkAllocationCallbacks *pAllocator); - struct wsi_image *(*get_wsi_image)(struct wsi_swapchain *swapchain, - uint32_t image_index); - VkResult (*acquire_next_image)(struct wsi_swapchain *swap_chain, - uint64_t timeout, VkSemaphore semaphore, - uint32_t *image_index); - VkResult (*queue_present)(struct wsi_swapchain *swap_chain, - uint32_t image_index, - const VkPresentRegionKHR *damage); -}; +struct wsi_swapchain; struct wsi_interface { VkResult (*get_support)(VkIcdSurfaceBase *surface, @@ -166,25 +141,6 @@ struct wsi_callbacks { }; #undef WSI_CB -#define WSI_DEFINE_NONDISP_HANDLE_CASTS(__wsi_type, __VkType) \ - \ - static inline struct __wsi_type * \ - __wsi_type ## _from_handle(__VkType _handle) \ - { \ - return (struct __wsi_type *)(uintptr_t) _handle; \ - } \ - \ - static inline __VkType \ - __wsi_type ## _to_handle(struct __wsi_type *_obj) \ - { \ - return (__VkType)(uintptr_t) _obj; \ - } - -#define WSI_FROM_HANDLE(__wsi_type, __name, __handle) \ - struct __wsi_type *__name = __wsi_type ## _from_handle(__handle) - -WSI_DEFINE_NONDISP_HANDLE_CASTS(wsi_swapchain, VkSwapchainKHR) - #define ICD_DEFINE_NONDISP_HANDLE_CASTS(__VkIcdType, __VkType) \ \ static inline __VkIcdType * \ diff --git a/src/vulkan/wsi/wsi_common_private.h b/src/vulkan/wsi/wsi_common_private.h index 28abf6c232..3fa68f0324 100644 --- a/src/vulkan/wsi/wsi_common_private.h +++ b/src/vulkan/wsi/wsi_common_private.h @@ -41,6 +41,32 @@ struct wsi_image { int fd; }; +struct wsi_swapchain { + const struct wsi_device *wsi; + + VkDevice device; + VkAllocationCallbacks alloc; + VkFence fences[3]; + VkPresentModeKHR present_mode; + uint32_t image_count; + + bool use_prime_blit; + + /* Command pools, one per queue family */ + VkCommandPool *cmd_pools; + + VkResult (*destroy)(struct wsi_swapchain *swapchain, + const VkAllocationCallbacks *pAllocator); + struct wsi_image *(*get_wsi_image)(struct wsi_swapchain *swapchain, + uint32_t image_index); + VkResult (*acquire_next_image)(struct wsi_swapchain *swap_chain, + uint64_t timeout, VkSemaphore semaphore, + uint32_t *image_index); + VkResult (*queue_present)(struct wsi_swapchain *swap_chain, + uint32_t image_index, + const VkPresentRegionKHR *damage); +}; + VkResult wsi_swapchain_init(const struct wsi_device *wsi, struct wsi_swapchain *chain, @@ -64,4 +90,24 @@ void wsi_destroy_image(const struct wsi_swapchain *chain, struct wsi_image *image); + +#define WSI_DEFINE_NONDISP_HANDLE_CASTS(__wsi_type, __VkType) \ + \ + static inline struct __wsi_type * \ + __wsi_type ## _from_handle(__VkType _handle) \ + { \ + return (struct __wsi_type *)(uintptr_t) _handle; \ + } \ + \ + static inline __VkType \ + __wsi_type ## _to_handle(struct __wsi_type *_obj) \ + { \ + return (__VkType)(uintptr_t) _obj; \ + } + +#define WSI_FROM_HANDLE(__wsi_type, __name, __handle) \ + struct __wsi_type *__name = __wsi_type ## _from_handle(__handle) + +WSI_DEFINE_NONDISP_HANDLE_CASTS(wsi_swapchain, VkSwapchainKHR) + #endif /* WSI_COMMON_PRIVATE_H */ |