68#elif defined(__APPLE__)
81 int contextMajorVersion,
82 int contextMinorVersion,
127 void *r_physical_device,
131 void **r_queue_mutex)
override;
136 std::function<
void(
const GHOST_VulkanSwapChainData *)> swap_buffers_pre_callback,
137 std::function<
void(
void)> swap_buffers_post_callback)
override;
162#elif defined(__APPLE__)
163 CAMetalLayer *m_metal_layer;
175 const int m_context_major_version;
176 const int m_context_minor_version;
180 VkCommandPool m_command_pool;
181 VkCommandBuffer m_command_buffer;
183 VkQueue m_graphic_queue;
184 VkQueue m_present_queue;
187 VkSurfaceKHR m_surface;
188 VkSwapchainKHR m_swapchain;
189 std::vector<VkImage> m_swapchain_images;
191 VkExtent2D m_render_extent;
192 VkExtent2D m_render_extent_min;
193 VkSurfaceFormatKHR m_surface_format;
208 std::function<void(
const GHOST_VulkanSwapChainData *)> swap_buffers_pre_callback_;
209 std::function<void(
void)> swap_buffers_post_callback_;
211 const char *getPlatformSpecificSurfaceExtension()
const;
GHOST_TVulkanPlatformType
GHOST_TSuccess activateDrawingContext() override
GHOST_TSuccess swapBuffers() override
GHOST_TSuccess getVulkanSwapChainFormat(GHOST_VulkanSwapChainData *r_swap_chain_data) override
GHOST_TSuccess getVulkanHandles(void *r_instance, void *r_physical_device, void *r_device, uint32_t *r_graphic_queue_family, void *r_queue, void **r_queue_mutex) override
GHOST_TSuccess getSwapInterval(int &) override
GHOST_TSuccess setSwapInterval(int) override
GHOST_TSuccess initializeDrawingContext() override
GHOST_TSuccess releaseDrawingContext() override
GHOST_TSuccess releaseNativeHandles() override
GHOST_TSuccess setVulkanSwapBuffersCallbacks(std::function< void(const GHOST_VulkanSwapChainData *)> swap_buffers_pre_callback, std::function< void(void)> swap_buffers_post_callback) override
GHOST_ContextVK(bool stereoVisual, GHOST_TVulkanPlatformType platform, Window window, Display *display, wl_surface *wayland_surface, wl_display *wayland_display, const GHOST_ContextVK_WindowInfo *wayland_window_info, int contextMajorVersion, int contextMinorVersion, int debug, const GHOST_GPUDevice &preferred_device)