comparison fuhtark_test/Vulkan-Headers-1.4.334/include/vulkan/vulkan_android.h @ 1501:f40d9d814c08 default tip

did: correct vulkan-api generator
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 23:34:29 +0700
parents
children
comparison
equal deleted inserted replaced
1500:91c8c3b7cbf0 1501:f40d9d814c08
1 #ifndef VULKAN_ANDROID_H_
2 #define VULKAN_ANDROID_H_ 1
3
4 /*
5 ** Copyright 2015-2025 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 // VK_KHR_android_surface is a preprocessor guard. Do not pass it to API calls.
23 #define VK_KHR_android_surface 1
24 struct ANativeWindow;
25 #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
26 #define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"
27 typedef VkFlags VkAndroidSurfaceCreateFlagsKHR;
28 typedef struct VkAndroidSurfaceCreateInfoKHR {
29 VkStructureType sType;
30 const void* pNext;
31 VkAndroidSurfaceCreateFlagsKHR flags;
32 struct ANativeWindow* window;
33 } VkAndroidSurfaceCreateInfoKHR;
34
35 typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
36
37 #ifndef VK_NO_PROTOTYPES
38 #ifndef VK_ONLY_EXPORTED_PROTOTYPES
39 VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(
40 VkInstance instance,
41 const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
42 const VkAllocationCallbacks* pAllocator,
43 VkSurfaceKHR* pSurface);
44 #endif
45 #endif
46
47
48 // VK_ANDROID_external_memory_android_hardware_buffer is a preprocessor guard. Do not pass it to API calls.
49 #define VK_ANDROID_external_memory_android_hardware_buffer 1
50 struct AHardwareBuffer;
51 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 5
52 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"
53 typedef struct VkAndroidHardwareBufferUsageANDROID {
54 VkStructureType sType;
55 void* pNext;
56 uint64_t androidHardwareBufferUsage;
57 } VkAndroidHardwareBufferUsageANDROID;
58
59 typedef struct VkAndroidHardwareBufferPropertiesANDROID {
60 VkStructureType sType;
61 void* pNext;
62 VkDeviceSize allocationSize;
63 uint32_t memoryTypeBits;
64 } VkAndroidHardwareBufferPropertiesANDROID;
65
66 typedef struct VkAndroidHardwareBufferFormatPropertiesANDROID {
67 VkStructureType sType;
68 void* pNext;
69 VkFormat format;
70 uint64_t externalFormat;
71 VkFormatFeatureFlags formatFeatures;
72 VkComponentMapping samplerYcbcrConversionComponents;
73 VkSamplerYcbcrModelConversion suggestedYcbcrModel;
74 VkSamplerYcbcrRange suggestedYcbcrRange;
75 VkChromaLocation suggestedXChromaOffset;
76 VkChromaLocation suggestedYChromaOffset;
77 } VkAndroidHardwareBufferFormatPropertiesANDROID;
78
79 typedef struct VkImportAndroidHardwareBufferInfoANDROID {
80 VkStructureType sType;
81 const void* pNext;
82 struct AHardwareBuffer* buffer;
83 } VkImportAndroidHardwareBufferInfoANDROID;
84
85 typedef struct VkMemoryGetAndroidHardwareBufferInfoANDROID {
86 VkStructureType sType;
87 const void* pNext;
88 VkDeviceMemory memory;
89 } VkMemoryGetAndroidHardwareBufferInfoANDROID;
90
91 typedef struct VkExternalFormatANDROID {
92 VkStructureType sType;
93 void* pNext;
94 uint64_t externalFormat;
95 } VkExternalFormatANDROID;
96
97 typedef struct VkAndroidHardwareBufferFormatProperties2ANDROID {
98 VkStructureType sType;
99 void* pNext;
100 VkFormat format;
101 uint64_t externalFormat;
102 VkFormatFeatureFlags2 formatFeatures;
103 VkComponentMapping samplerYcbcrConversionComponents;
104 VkSamplerYcbcrModelConversion suggestedYcbcrModel;
105 VkSamplerYcbcrRange suggestedYcbcrRange;
106 VkChromaLocation suggestedXChromaOffset;
107 VkChromaLocation suggestedYChromaOffset;
108 } VkAndroidHardwareBufferFormatProperties2ANDROID;
109
110 typedef VkResult (VKAPI_PTR *PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties);
111 typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer);
112
113 #ifndef VK_NO_PROTOTYPES
114 #ifndef VK_ONLY_EXPORTED_PROTOTYPES
115 VKAPI_ATTR VkResult VKAPI_CALL vkGetAndroidHardwareBufferPropertiesANDROID(
116 VkDevice device,
117 const struct AHardwareBuffer* buffer,
118 VkAndroidHardwareBufferPropertiesANDROID* pProperties);
119 #endif
120
121 #ifndef VK_ONLY_EXPORTED_PROTOTYPES
122 VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(
123 VkDevice device,
124 const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,
125 struct AHardwareBuffer** pBuffer);
126 #endif
127 #endif
128
129
130 // VK_ANDROID_external_format_resolve is a preprocessor guard. Do not pass it to API calls.
131 #define VK_ANDROID_external_format_resolve 1
132 #define VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_SPEC_VERSION 1
133 #define VK_ANDROID_EXTERNAL_FORMAT_RESOLVE_EXTENSION_NAME "VK_ANDROID_external_format_resolve"
134 typedef struct VkPhysicalDeviceExternalFormatResolveFeaturesANDROID {
135 VkStructureType sType;
136 void* pNext;
137 VkBool32 externalFormatResolve;
138 } VkPhysicalDeviceExternalFormatResolveFeaturesANDROID;
139
140 typedef struct VkPhysicalDeviceExternalFormatResolvePropertiesANDROID {
141 VkStructureType sType;
142 void* pNext;
143 VkBool32 nullColorAttachmentWithExternalFormatResolve;
144 VkChromaLocation externalFormatResolveChromaOffsetX;
145 VkChromaLocation externalFormatResolveChromaOffsetY;
146 } VkPhysicalDeviceExternalFormatResolvePropertiesANDROID;
147
148 typedef struct VkAndroidHardwareBufferFormatResolvePropertiesANDROID {
149 VkStructureType sType;
150 void* pNext;
151 VkFormat colorAttachmentFormat;
152 } VkAndroidHardwareBufferFormatResolvePropertiesANDROID;
153
154
155 #ifdef __cplusplus
156 }
157 #endif
158
159 #endif