Blender V4.5
GHOST_IContext.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2001-2002 NaN Holding BV. All rights reserved.
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9
10#pragma once
11
12#include "GHOST_Types.h"
13
14#ifdef WITH_VULKAN_BACKEND
15# include <functional>
16#endif
17
26 public:
30 virtual ~GHOST_IContext() = default;
31
36
42
48
49 virtual unsigned int getDefaultFramebuffer() = 0;
51
52#ifdef WITH_VULKAN_BACKEND
64 virtual GHOST_TSuccess getVulkanHandles(GHOST_VulkanHandles &r_handles) = 0;
65
78 virtual GHOST_TSuccess getVulkanSwapChainFormat(
79 GHOST_VulkanSwapChainData *r_swap_chain_data) = 0;
80
97 virtual GHOST_TSuccess setVulkanSwapBuffersCallbacks(
98 std::function<void(const GHOST_VulkanSwapChainData *)> swap_buffers_pre_callback,
99 std::function<void(void)> swap_buffers_post_callback,
100 std::function<void(GHOST_VulkanOpenXRData *)> openxr_acquire_framebuffer_image_callback,
101 std::function<void(GHOST_VulkanOpenXRData *)> openxr_release_framebuffer_image_callback) = 0;
102#endif
103
104 MEM_CXX_CLASS_ALLOC_FUNCS("GHOST:GHOST_IContext")
105};
GHOST_TSuccess
Definition GHOST_Types.h:80
virtual GHOST_TSuccess releaseDrawingContext()=0
static GHOST_IContext * getActiveDrawingContext()
virtual GHOST_TSuccess activateDrawingContext()=0
virtual GHOST_TSuccess swapBuffers()=0
virtual ~GHOST_IContext()=default
virtual unsigned int getDefaultFramebuffer()=0