Edit

IABSD.fr/xenocara/lib/mesa/include/vulkan/vulkan_screen.h

Branch :

  • Show log

    Commit

  • Author : jsg
    Date : 2025-06-05 11:23:11
    Hash : 67d6f117
    Message : Import Mesa 25.0.7

  • lib/mesa/include/vulkan/vulkan_screen.h
  • #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
    VKAPI_ATTR VkResult VKAPI_CALL vkCreateScreenSurfaceQNX(
        VkInstance                                  instance,
        const VkScreenSurfaceCreateInfoQNX*         pCreateInfo,
        const VkAllocationCallbacks*                pAllocator,
        VkSurfaceKHR*                               pSurface);
    
    VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceScreenPresentationSupportQNX(
        VkPhysicalDevice                            physicalDevice,
        uint32_t                                    queueFamilyIndex,
        struct _screen_window*                      window);
    #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
    VKAPI_ATTR VkResult VKAPI_CALL vkGetScreenBufferPropertiesQNX(
        VkDevice                                    device,
        const struct _screen_buffer*                buffer,
        VkScreenBufferPropertiesQNX*                pProperties);
    #endif
    
    #ifdef __cplusplus
    }
    #endif
    
    #endif