HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vulkan_fuchsia.h
Go to the documentation of this file.
1 #ifndef VULKAN_FUCHSIA_H_
2 #define VULKAN_FUCHSIA_H_ 1
3 
4 /*
5 ** Copyright 2015-2022 The Khronos Group Inc.
6 **
7 ** SPDX-License-Identifier: Apache-2.0
8 */
9 
10 /*
11 ** This header is generated from the Khronos Vulkan XML API Registry.
12 **
13 */
14 
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 
21 
22 #define VK_FUCHSIA_imagepipe_surface 1
23 #define VK_FUCHSIA_IMAGEPIPE_SURFACE_SPEC_VERSION 1
24 #define VK_FUCHSIA_IMAGEPIPE_SURFACE_EXTENSION_NAME "VK_FUCHSIA_imagepipe_surface"
28  const void* pNext;
29  VkImagePipeSurfaceCreateFlagsFUCHSIA flags;
30  zx_handle_t imagePipeHandle;
32 
33 typedef VkResult (VKAPI_PTR *PFN_vkCreateImagePipeSurfaceFUCHSIA)(VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
34 
35 #ifndef VK_NO_PROTOTYPES
37  VkInstance instance,
38  const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo,
39  const VkAllocationCallbacks* pAllocator,
40  VkSurfaceKHR* pSurface);
41 #endif
42 
43 
44 #define VK_FUCHSIA_external_memory 1
45 #define VK_FUCHSIA_EXTERNAL_MEMORY_SPEC_VERSION 1
46 #define VK_FUCHSIA_EXTERNAL_MEMORY_EXTENSION_NAME "VK_FUCHSIA_external_memory"
49  const void* pNext;
51  zx_handle_t handle;
53 
56  void* pNext;
57  uint32_t memoryTypeBits;
59 
62  const void* pNext;
63  VkDeviceMemory memory;
66 
67 typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryZirconHandleFUCHSIA)(VkDevice device, const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, zx_handle_t* pZirconHandle);
69 
70 #ifndef VK_NO_PROTOTYPES
72  VkDevice device,
73  const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
74  zx_handle_t* pZirconHandle);
75 
77  VkDevice device,
79  zx_handle_t zirconHandle,
80  VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties);
81 #endif
82 
83 
84 #define VK_FUCHSIA_external_semaphore 1
85 #define VK_FUCHSIA_EXTERNAL_SEMAPHORE_SPEC_VERSION 1
86 #define VK_FUCHSIA_EXTERNAL_SEMAPHORE_EXTENSION_NAME "VK_FUCHSIA_external_semaphore"
89  const void* pNext;
90  VkSemaphore semaphore;
93  zx_handle_t zirconHandle;
95 
98  const void* pNext;
99  VkSemaphore semaphore;
102 
103 typedef VkResult (VKAPI_PTR *PFN_vkImportSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo);
104 typedef VkResult (VKAPI_PTR *PFN_vkGetSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo, zx_handle_t* pZirconHandle);
105 
106 #ifndef VK_NO_PROTOTYPES
108  VkDevice device,
109  const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo);
110 
112  VkDevice device,
113  const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
114  zx_handle_t* pZirconHandle);
115 #endif
116 
117 
118 #define VK_FUCHSIA_buffer_collection 1
119 VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferCollectionFUCHSIA)
120 #define VK_FUCHSIA_BUFFER_COLLECTION_SPEC_VERSION 2
121 #define VK_FUCHSIA_BUFFER_COLLECTION_EXTENSION_NAME "VK_FUCHSIA_buffer_collection"
123 
135  const void* pNext;
136  zx_handle_t collectionToken;
138 
141  const void* pNext;
142  VkBufferCollectionFUCHSIA collection;
143  uint32_t index;
145 
148  const void* pNext;
149  VkBufferCollectionFUCHSIA collection;
150  uint32_t index;
152 
155  const void* pNext;
156  uint32_t minBufferCount;
157  uint32_t maxBufferCount;
162 
165  const void* pNext;
170 
173  const void* pNext;
174  VkBufferCollectionFUCHSIA collection;
175  uint32_t index;
177 
180  const void* pNext;
181  uint32_t colorSpace;
183 
186  void* pNext;
187  uint32_t memoryTypeBits;
188  uint32_t bufferCount;
189  uint32_t createInfoIndex;
199 
202  const void* pNext;
205  VkImageFormatConstraintsFlagsFUCHSIA flags;
207  uint32_t colorSpaceCount;
210 
213  const void* pNext;
217  VkImageConstraintsInfoFlagsFUCHSIA flags;
219 
220 typedef VkResult (VKAPI_PTR *PFN_vkCreateBufferCollectionFUCHSIA)(VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkBufferCollectionFUCHSIA* pCollection);
221 typedef VkResult (VKAPI_PTR *PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo);
222 typedef VkResult (VKAPI_PTR *PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo);
223 typedef void (VKAPI_PTR *PFN_vkDestroyBufferCollectionFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks* pAllocator);
224 typedef VkResult (VKAPI_PTR *PFN_vkGetBufferCollectionPropertiesFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA* pProperties);
225 
226 #ifndef VK_NO_PROTOTYPES
228  VkDevice device,
229  const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
230  const VkAllocationCallbacks* pAllocator,
231  VkBufferCollectionFUCHSIA* pCollection);
232 
234  VkDevice device,
235  VkBufferCollectionFUCHSIA collection,
236  const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo);
237 
239  VkDevice device,
240  VkBufferCollectionFUCHSIA collection,
241  const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo);
242 
244  VkDevice device,
245  VkBufferCollectionFUCHSIA collection,
246  const VkAllocationCallbacks* pAllocator);
247 
249  VkDevice device,
250  VkBufferCollectionFUCHSIA collection,
252 #endif
253 
254 #ifdef __cplusplus
255 }
256 #endif
257 
258 #endif
struct VkSysmemColorSpaceFUCHSIA VkSysmemColorSpaceFUCHSIA
struct VkBufferCollectionConstraintsInfoFUCHSIA VkBufferCollectionConstraintsInfoFUCHSIA
VkFormatFeatureFlags requiredFormatFeatures
VkStructureType
Definition: vulkan_core.h:208
struct VkImportSemaphoreZirconHandleInfoFUCHSIA VkImportSemaphoreZirconHandleInfoFUCHSIA
VkFlags VkFormatFeatureFlags
Definition: vulkan_core.h:2231
const VkSysmemColorSpaceFUCHSIA * pColorSpaces
VkResult
Definition: vulkan_core.h:139
VkComponentMapping samplerYcbcrConversionComponents
struct VkMemoryZirconHandlePropertiesFUCHSIA VkMemoryZirconHandlePropertiesFUCHSIA
#define VKAPI_CALL
Definition: vk_platform.h:57
struct VkImageFormatConstraintsInfoFUCHSIA VkImageFormatConstraintsInfoFUCHSIA
struct VkBufferCollectionBufferCreateInfoFUCHSIA VkBufferCollectionBufferCreateInfoFUCHSIA
struct VkBufferConstraintsInfoFUCHSIA VkBufferConstraintsInfoFUCHSIA
void
Definition: png.h:1083
void(VKAPI_PTR * PFN_vkDestroyBufferCollectionFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks *pAllocator)
VkSamplerYcbcrRange
Definition: vulkan_core.h:4884
VKAPI_ATTR VkResult VKAPI_CALL vkGetBufferCollectionPropertiesFUCHSIA(VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA *pProperties)
VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints
VkBufferCollectionFUCHSIA collection
GLuint64 GLenum handleType
Definition: RE_OGL.h:262
VkImageConstraintsInfoFlagBitsFUCHSIA
VkResult(VKAPI_PTR * PFN_vkCreateImagePipeSurfaceFUCHSIA)(VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryZirconHandleFUCHSIA(VkDevice device, const VkMemoryGetZirconHandleInfoFUCHSIA *pGetZirconHandleInfo, zx_handle_t *pZirconHandle)
VkExternalMemoryHandleTypeFlagBits handleType
struct VkBufferCollectionImageCreateInfoFUCHSIA VkBufferCollectionImageCreateInfoFUCHSIA
struct VkImportMemoryBufferCollectionFUCHSIA VkImportMemoryBufferCollectionFUCHSIA
VKAPI_ATTR VkResult VKAPI_CALL vkSetBufferCollectionBufferConstraintsFUCHSIA(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA *pBufferConstraintsInfo)
VkImageConstraintsInfoFlagsFUCHSIA flags
VkExternalSemaphoreHandleTypeFlagBits
Definition: vulkan_core.h:5019
#define VKAPI_PTR
Definition: vk_platform.h:58
VkExternalMemoryHandleTypeFlagBits
Definition: vulkan_core.h:4947
#define VKAPI_ATTR
Definition: vk_platform.h:56
VKAPI_ATTR VkResult VKAPI_CALL vkImportSemaphoreZirconHandleFUCHSIA(VkDevice device, const VkImportSemaphoreZirconHandleInfoFUCHSIA *pImportSemaphoreZirconHandleInfo)
VkResult(VKAPI_PTR * PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA)(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, zx_handle_t zirconHandle, VkMemoryZirconHandlePropertiesFUCHSIA *pMemoryZirconHandleProperties)
VKAPI_ATTR VkResult VKAPI_CALL vkCreateBufferCollectionFUCHSIA(VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkBufferCollectionFUCHSIA *pCollection)
VkExternalSemaphoreHandleTypeFlagBits handleType
VkChromaLocation
Definition: vulkan_core.h:4892
struct VkImagePipeSurfaceCreateInfoFUCHSIA VkImagePipeSurfaceCreateInfoFUCHSIA
VkBufferCollectionFUCHSIA collection
VkResult(VKAPI_PTR * PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkBufferConstraintsInfoFUCHSIA *pBufferConstraintsInfo)
VkResult(VKAPI_PTR * PFN_vkGetSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkSemaphoreGetZirconHandleInfoFUCHSIA *pGetZirconHandleInfo, zx_handle_t *pZirconHandle)
VkFlags VkImageFormatConstraintsFlagsFUCHSIA
VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints
struct VkImageConstraintsInfoFUCHSIA VkImageConstraintsInfoFUCHSIA
VkResult(VKAPI_PTR * PFN_vkImportSemaphoreZirconHandleFUCHSIA)(VkDevice device, const VkImportSemaphoreZirconHandleInfoFUCHSIA *pImportSemaphoreZirconHandleInfo)
VKAPI_ATTR void VKAPI_CALL vkDestroyBufferCollectionFUCHSIA(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkAllocationCallbacks *pAllocator)
VkResult(VKAPI_PTR * PFN_vkSetBufferCollectionImageConstraintsFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkImageConstraintsInfoFUCHSIA *pImageConstraintsInfo)
VKAPI_ATTR VkResult VKAPI_CALL vkCreateImagePipeSurfaceFUCHSIA(VkInstance instance, const VkImagePipeSurfaceCreateInfoFUCHSIA *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryZirconHandlePropertiesFUCHSIA(VkDevice device, VkExternalMemoryHandleTypeFlagBits handleType, zx_handle_t zirconHandle, VkMemoryZirconHandlePropertiesFUCHSIA *pMemoryZirconHandleProperties)
VkSamplerYcbcrModelConversion suggestedYcbcrModel
struct VkImportMemoryZirconHandleInfoFUCHSIA VkImportMemoryZirconHandleInfoFUCHSIA
struct VkSemaphoreGetZirconHandleInfoFUCHSIA VkSemaphoreGetZirconHandleInfoFUCHSIA
struct VkBufferCollectionCreateInfoFUCHSIA VkBufferCollectionCreateInfoFUCHSIA
VKAPI_ATTR VkResult VKAPI_CALL vkGetSemaphoreZirconHandleFUCHSIA(VkDevice device, const VkSemaphoreGetZirconHandleInfoFUCHSIA *pGetZirconHandleInfo, zx_handle_t *pZirconHandle)
VkFlags VkSemaphoreImportFlags
Definition: vulkan_core.h:5017
VKAPI_ATTR VkResult VKAPI_CALL vkSetBufferCollectionImageConstraintsFUCHSIA(VkDevice device, VkBufferCollectionFUCHSIA collection, const VkImageConstraintsInfoFUCHSIA *pImageConstraintsInfo)
uint32_t VkFlags
Definition: vulkan_core.h:96
VkFlags VkImagePipeSurfaceCreateFlagsFUCHSIA
VkExternalSemaphoreHandleTypeFlagBits handleType
struct VkMemoryGetZirconHandleInfoFUCHSIA VkMemoryGetZirconHandleInfoFUCHSIA
VkResult(VKAPI_PTR * PFN_vkCreateBufferCollectionFUCHSIA)(VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkBufferCollectionFUCHSIA *pCollection)
VkSysmemColorSpaceFUCHSIA sysmemColorSpaceIndex
VkSamplerYcbcrRange suggestedYcbcrRange
VkFormatFeatureFlags requiredFormatFeatures
#define VK_DEFINE_NON_DISPATCHABLE_HANDLE(object)
Definition: vulkan_core.h:57
VkSamplerYcbcrModelConversion
Definition: vulkan_core.h:4870
VkExternalMemoryHandleTypeFlagBits handleType
VkImagePipeSurfaceCreateFlagsFUCHSIA flags
VkResult(VKAPI_PTR * PFN_vkGetBufferCollectionPropertiesFUCHSIA)(VkDevice device, VkBufferCollectionFUCHSIA collection, VkBufferCollectionPropertiesFUCHSIA *pProperties)
VkImageFormatConstraintsFlagsFUCHSIA flags
VkResult(VKAPI_PTR * PFN_vkGetMemoryZirconHandleFUCHSIA)(VkDevice device, const VkMemoryGetZirconHandleInfoFUCHSIA *pGetZirconHandleInfo, zx_handle_t *pZirconHandle)
struct VkBufferCollectionPropertiesFUCHSIA VkBufferCollectionPropertiesFUCHSIA
const VkImageFormatConstraintsInfoFUCHSIA * pFormatConstraints
VkFlags VkImageConstraintsInfoFlagsFUCHSIA