| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- #ifndef VULKAN_SCREEN_H_
- #define VULKAN_SCREEN_H_ 1
- /*
- ** Copyright 2015-2025 The Khronos Group Inc.
- **
- ** SPDX-License-Identifier: Apache-2.0
- */
- /*
- ** This header is generated from the Khronos Vulkan XML API Registry.
- **
- */
- #ifdef __cplusplus
- extern "C" {
- #endif
- // VK_QNX_screen_surface is a preprocessor guard. Do not pass it to API calls.
- #define VK_QNX_screen_surface 1
- #define VK_QNX_SCREEN_SURFACE_SPEC_VERSION 1
- #define VK_QNX_SCREEN_SURFACE_EXTENSION_NAME "VK_QNX_screen_surface"
- typedef VkFlags VkScreenSurfaceCreateFlagsQNX;
- typedef struct VkScreenSurfaceCreateInfoQNX {
- VkStructureType sType;
- const void* pNext;
- VkScreenSurfaceCreateFlagsQNX flags;
- struct _screen_context* context;
- struct _screen_window* window;
- } VkScreenSurfaceCreateInfoQNX;
- typedef VkResult (VKAPI_PTR *PFN_vkCreateScreenSurfaceQNX)(VkInstance instance, const VkScreenSurfaceCreateInfoQNX* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
- typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct _screen_window* window);
- #ifndef VK_NO_PROTOTYPES
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkResult VKAPI_CALL vkCreateScreenSurfaceQNX(
- VkInstance instance,
- const VkScreenSurfaceCreateInfoQNX* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSurfaceKHR* pSurface);
- #endif
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceScreenPresentationSupportQNX(
- VkPhysicalDevice physicalDevice,
- uint32_t queueFamilyIndex,
- struct _screen_window* window);
- #endif
- #endif
- // VK_QNX_external_memory_screen_buffer is a preprocessor guard. Do not pass it to API calls.
- #define VK_QNX_external_memory_screen_buffer 1
- #define VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_SPEC_VERSION 1
- #define VK_QNX_EXTERNAL_MEMORY_SCREEN_BUFFER_EXTENSION_NAME "VK_QNX_external_memory_screen_buffer"
- typedef struct VkScreenBufferPropertiesQNX {
- VkStructureType sType;
- void* pNext;
- VkDeviceSize allocationSize;
- uint32_t memoryTypeBits;
- } VkScreenBufferPropertiesQNX;
- typedef struct VkScreenBufferFormatPropertiesQNX {
- VkStructureType sType;
- void* pNext;
- VkFormat format;
- uint64_t externalFormat;
- uint64_t screenUsage;
- VkFormatFeatureFlags formatFeatures;
- VkComponentMapping samplerYcbcrConversionComponents;
- VkSamplerYcbcrModelConversion suggestedYcbcrModel;
- VkSamplerYcbcrRange suggestedYcbcrRange;
- VkChromaLocation suggestedXChromaOffset;
- VkChromaLocation suggestedYChromaOffset;
- } VkScreenBufferFormatPropertiesQNX;
- typedef struct VkImportScreenBufferInfoQNX {
- VkStructureType sType;
- const void* pNext;
- struct _screen_buffer* buffer;
- } VkImportScreenBufferInfoQNX;
- typedef struct VkExternalFormatQNX {
- VkStructureType sType;
- void* pNext;
- uint64_t externalFormat;
- } VkExternalFormatQNX;
- typedef struct VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX {
- VkStructureType sType;
- void* pNext;
- VkBool32 screenBufferImport;
- } VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX;
- typedef VkResult (VKAPI_PTR *PFN_vkGetScreenBufferPropertiesQNX)(VkDevice device, const struct _screen_buffer* buffer, VkScreenBufferPropertiesQNX* pProperties);
- #ifndef VK_NO_PROTOTYPES
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkResult VKAPI_CALL vkGetScreenBufferPropertiesQNX(
- VkDevice device,
- const struct _screen_buffer* buffer,
- VkScreenBufferPropertiesQNX* pProperties);
- #endif
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif
|