HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vulkan_android.h
Go to the documentation of this file.
1 #ifndef VULKAN_ANDROID_H_
2 #define VULKAN_ANDROID_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_KHR_android_surface 1
23 struct ANativeWindow;
24 #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
25 #define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"
29  const void* pNext;
30  VkAndroidSurfaceCreateFlagsKHR flags;
31  struct ANativeWindow* window;
33 
34 typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
35 
36 #ifndef VK_NO_PROTOTYPES
38  VkInstance instance,
39  const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
40  const VkAllocationCallbacks* pAllocator,
41  VkSurfaceKHR* pSurface);
42 #endif
43 
44 
45 #define VK_ANDROID_external_memory_android_hardware_buffer 1
46 struct AHardwareBuffer;
47 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 5
48 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"
51  void* pNext;
54 
57  void* pNext;
59  uint32_t memoryTypeBits;
61 
64  void* pNext;
66  uint64_t externalFormat;
74 
77  const void* pNext;
78  struct AHardwareBuffer* buffer;
80 
83  const void* pNext;
84  VkDeviceMemory memory;
86 
87 typedef struct VkExternalFormatANDROID {
89  void* pNext;
90  uint64_t externalFormat;
92 
95  void* pNext;
97  uint64_t externalFormat;
105 
106 typedef VkResult (VKAPI_PTR *PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties);
107 typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer);
108 
109 #ifndef VK_NO_PROTOTYPES
111  VkDevice device,
112  const struct AHardwareBuffer* buffer,
114 
116  VkDevice device,
118  struct AHardwareBuffer** pBuffer);
119 #endif
120 
121 #ifdef __cplusplus
122 }
123 #endif
124 
125 #endif
VkStructureType
Definition: vulkan_core.h:208
struct VkAndroidHardwareBufferFormatPropertiesANDROID VkAndroidHardwareBufferFormatPropertiesANDROID
VkFlags VkFormatFeatureFlags
Definition: vulkan_core.h:2231
VkResult
Definition: vulkan_core.h:139
#define VKAPI_CALL
Definition: vk_platform.h:57
VkSamplerYcbcrModelConversion suggestedYcbcrModel
VkStructureType sType
VkSamplerYcbcrRange
Definition: vulkan_core.h:4884
struct VkExternalFormatANDROID VkExternalFormatANDROID
struct VkAndroidHardwareBufferUsageANDROID VkAndroidHardwareBufferUsageANDROID
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID *pInfo, struct AHardwareBuffer **pBuffer)
struct VkAndroidHardwareBufferFormatProperties2ANDROID VkAndroidHardwareBufferFormatProperties2ANDROID
GLuint buffer
Definition: glcorearb.h:660
#define VKAPI_PTR
Definition: vk_platform.h:58
#define VKAPI_ATTR
Definition: vk_platform.h:56
VkFlags64 VkFormatFeatureFlags2
Definition: vulkan_core.h:6678
VKAPI_ATTR VkResult VKAPI_CALL vkGetAndroidHardwareBufferPropertiesANDROID(VkDevice device, const struct AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties)
VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
VkChromaLocation
Definition: vulkan_core.h:4892
struct VkAndroidHardwareBufferPropertiesANDROID VkAndroidHardwareBufferPropertiesANDROID
VkSamplerYcbcrModelConversion suggestedYcbcrModel
struct VkMemoryGetAndroidHardwareBufferInfoANDROID VkMemoryGetAndroidHardwareBufferInfoANDROID
struct VkImportAndroidHardwareBufferInfoANDROID VkImportAndroidHardwareBufferInfoANDROID
VkFlags VkAndroidSurfaceCreateFlagsKHR
uint32_t VkFlags
Definition: vulkan_core.h:96
VkResult(VKAPI_PTR * PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
VkResult(VKAPI_PTR * PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID *pInfo, struct AHardwareBuffer **pBuffer)
struct ANativeWindow * window
VkFormat
Definition: vulkan_core.h:1386
uint64_t VkDeviceSize
Definition: vulkan_core.h:95
VkSamplerYcbcrModelConversion
Definition: vulkan_core.h:4870
VkAndroidSurfaceCreateFlagsKHR flags
struct VkAndroidSurfaceCreateInfoKHR VkAndroidSurfaceCreateInfoKHR
VkResult(VKAPI_PTR * PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties)