SDL  2.0
vulkan_android.h
Go to the documentation of this file.
1 #ifndef VULKAN_ANDROID_H_
2 #define VULKAN_ANDROID_H_ 1
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 /*
9 ** Copyright (c) 2015-2018 The Khronos Group Inc.
10 **
11 ** Licensed under the Apache License, Version 2.0 (the "License");
12 ** you may not use this file except in compliance with the License.
13 ** You may obtain a copy of the License at
14 **
15 ** http://www.apache.org/licenses/LICENSE-2.0
16 **
17 ** Unless required by applicable law or agreed to in writing, software
18 ** distributed under the License is distributed on an "AS IS" BASIS,
19 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 ** See the License for the specific language governing permissions and
21 ** limitations under the License.
22 */
23 
24 /*
25 ** This header is generated from the Khronos Vulkan XML API Registry.
26 **
27 */
28 
29 
30 #define VK_KHR_android_surface 1
31 struct ANativeWindow;
32 
33 #define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 6
34 #define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"
35 
37 
40  const void* pNext;
42  struct ANativeWindow* window;
44 
45 
46 typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
47 
48 #ifndef VK_NO_PROTOTYPES
50  VkInstance instance,
51  const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
52  const VkAllocationCallbacks* pAllocator,
53  VkSurfaceKHR* pSurface);
54 #endif
55 
56 #define VK_ANDROID_external_memory_android_hardware_buffer 1
57 struct AHardwareBuffer;
58 
59 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 3
60 #define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"
61 
64  void* pNext;
67 
70  void* pNext;
74 
77  void* pNext;
87 
90  const void* pNext;
91  struct AHardwareBuffer* buffer;
93 
96  const void* pNext;
97  VkDeviceMemory memory;
99 
100 typedef struct VkExternalFormatANDROID {
102  void* pNext;
105 
106 
108 typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer);
109 
110 #ifndef VK_NO_PROTOTYPES
112  VkDevice device,
113  const struct AHardwareBuffer* buffer,
115 
117  VkDevice device,
119  struct AHardwareBuffer** pBuffer);
120 #endif
121 
122 #ifdef __cplusplus
123 }
124 #endif
125 
126 #endif
VkComponentMapping
Definition: vulkan_core.h:2242
VkAndroidHardwareBufferPropertiesANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:69
VkAndroidHardwareBufferPropertiesANDROID::pNext
void * pNext
Definition: vulkan_android.h:70
VkAndroidHardwareBufferFormatPropertiesANDROID::samplerYcbcrConversionComponents
VkComponentMapping samplerYcbcrConversionComponents
Definition: vulkan_android.h:81
VkAndroidHardwareBufferUsageANDROID::pNext
void * pNext
Definition: vulkan_android.h:64
VkAndroidHardwareBufferFormatPropertiesANDROID::pNext
void * pNext
Definition: vulkan_android.h:77
VkFormat
VkFormat
Definition: vulkan_core.h:544
VkMemoryGetAndroidHardwareBufferInfoANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:95
VkImportAndroidHardwareBufferInfoANDROID::pNext
const void * pNext
Definition: vulkan_android.h:90
VkDeviceSize
uint64_t VkDeviceSize
Definition: vulkan_core.h:66
VkAndroidHardwareBufferUsageANDROID
Definition: vulkan_android.h:62
VkMemoryGetAndroidHardwareBufferInfoANDROID::pNext
const void * pNext
Definition: vulkan_android.h:96
VkAndroidHardwareBufferFormatPropertiesANDROID
Definition: vulkan_android.h:75
PFN_vkCreateAndroidSurfaceKHR
VkResult(VKAPI_PTR * PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
Definition: vulkan_android.h:46
VkMemoryGetAndroidHardwareBufferInfoANDROID
Definition: vulkan_android.h:94
VkAndroidHardwareBufferUsageANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:63
VkExternalFormatANDROID
Definition: vulkan_android.h:100
VkAndroidHardwareBufferPropertiesANDROID::allocationSize
VkDeviceSize allocationSize
Definition: vulkan_android.h:71
PFN_vkGetMemoryAndroidHardwareBufferANDROID
VkResult(VKAPI_PTR * PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID *pInfo, struct AHardwareBuffer **pBuffer)
Definition: vulkan_android.h:108
VkAndroidHardwareBufferFormatPropertiesANDROID::suggestedYcbcrModel
VkSamplerYcbcrModelConversion suggestedYcbcrModel
Definition: vulkan_android.h:82
buffer
GLuint buffer
Definition: SDL_opengl_glext.h:533
VkAndroidSurfaceCreateFlagsKHR
VkFlags VkAndroidSurfaceCreateFlagsKHR
Definition: vulkan_android.h:36
VkFlags
uint32_t VkFlags
Definition: vulkan_core.h:64
VkSamplerYcbcrRange
VkSamplerYcbcrRange
Definition: vulkan_core.h:3839
VkFormatFeatureFlags
VkFlags VkFormatFeatureFlags
Definition: vulkan_core.h:1338
VKAPI_ATTR
#define VKAPI_ATTR
Definition: vk_platform.h:51
VkResult
VkResult
Definition: vulkan_core.h:120
VkExternalFormatANDROID::externalFormat
uint64_t externalFormat
Definition: vulkan_android.h:103
VkAndroidSurfaceCreateInfoKHR::window
struct ANativeWindow * window
Definition: vulkan_android.h:42
VkImportAndroidHardwareBufferInfoANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:89
VkAndroidSurfaceCreateInfoKHR::sType
VkStructureType sType
Definition: vulkan_android.h:39
VkAndroidSurfaceCreateInfoKHR::flags
VkAndroidSurfaceCreateFlagsKHR flags
Definition: vulkan_android.h:41
VKAPI_CALL
#define VKAPI_CALL
Definition: vk_platform.h:52
VkExternalFormatANDROID::pNext
void * pNext
Definition: vulkan_android.h:102
VkAndroidHardwareBufferFormatPropertiesANDROID::suggestedXChromaOffset
VkChromaLocation suggestedXChromaOffset
Definition: vulkan_android.h:84
VKAPI_PTR
#define VKAPI_PTR
Definition: vk_platform.h:53
VkSamplerYcbcrModelConversion
VkSamplerYcbcrModelConversion
Definition: vulkan_core.h:3822
VkAndroidHardwareBufferFormatPropertiesANDROID::formatFeatures
VkFormatFeatureFlags formatFeatures
Definition: vulkan_android.h:80
VkAllocationCallbacks
Definition: vulkan_core.h:1784
VkStructureType
VkStructureType
Definition: vulkan_core.h:159
PFN_vkGetAndroidHardwareBufferPropertiesANDROID
VkResult(VKAPI_PTR * PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties)
Definition: vulkan_android.h:107
VkImportAndroidHardwareBufferInfoANDROID::buffer
struct AHardwareBuffer * buffer
Definition: vulkan_android.h:91
VkAndroidHardwareBufferPropertiesANDROID::memoryTypeBits
uint32_t memoryTypeBits
Definition: vulkan_android.h:72
VkExternalFormatANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:101
uint32_t
unsigned int uint32_t
Definition: SDL_config_windows.h:63
VkAndroidHardwareBufferFormatPropertiesANDROID::sType
VkStructureType sType
Definition: vulkan_android.h:76
VkAndroidSurfaceCreateInfoKHR::pNext
const void * pNext
Definition: vulkan_android.h:40
VkAndroidHardwareBufferFormatPropertiesANDROID::externalFormat
uint64_t externalFormat
Definition: vulkan_android.h:79
VkAndroidHardwareBufferFormatPropertiesANDROID::suggestedYChromaOffset
VkChromaLocation suggestedYChromaOffset
Definition: vulkan_android.h:85
VkChromaLocation
VkChromaLocation
Definition: vulkan_core.h:3850
VkAndroidHardwareBufferFormatPropertiesANDROID::format
VkFormat format
Definition: vulkan_android.h:78
VkMemoryGetAndroidHardwareBufferInfoANDROID::memory
VkDeviceMemory memory
Definition: vulkan_android.h:97
vkGetAndroidHardwareBufferPropertiesANDROID
VKAPI_ATTR VkResult VKAPI_CALL vkGetAndroidHardwareBufferPropertiesANDROID(VkDevice device, const struct AHardwareBuffer *buffer, VkAndroidHardwareBufferPropertiesANDROID *pProperties)
vkGetMemoryAndroidHardwareBufferANDROID
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID *pInfo, struct AHardwareBuffer **pBuffer)
VkAndroidHardwareBufferFormatPropertiesANDROID::suggestedYcbcrRange
VkSamplerYcbcrRange suggestedYcbcrRange
Definition: vulkan_android.h:83
VkAndroidHardwareBufferUsageANDROID::androidHardwareBufferUsage
uint64_t androidHardwareBufferUsage
Definition: vulkan_android.h:65
VkAndroidSurfaceCreateInfoKHR
Definition: vulkan_android.h:38
vkCreateAndroidSurfaceKHR
VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkSurfaceKHR *pSurface)
device
static SDL_AudioDeviceID device
Definition: loopwave.c:37
uint64_t
unsigned long long uint64_t
Definition: SDL_config_windows.h:65
VkImportAndroidHardwareBufferInfoANDROID
Definition: vulkan_android.h:88
VkAndroidHardwareBufferPropertiesANDROID
Definition: vulkan_android.h:68