Path: blob/master/3rdparty/include/vulkan/vulkan_android.h
16339 views
#ifndef VULKAN_ANDROID_H_1#define VULKAN_ANDROID_H_ 123#ifdef __cplusplus4extern "C" {5#endif67/*8** Copyright (c) 2015-2018 The Khronos Group Inc.9**10** Licensed under the Apache License, Version 2.0 (the "License");11** you may not use this file except in compliance with the License.12** You may obtain a copy of the License at13**14** http://www.apache.org/licenses/LICENSE-2.015**16** Unless required by applicable law or agreed to in writing, software17** distributed under the License is distributed on an "AS IS" BASIS,18** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.19** See the License for the specific language governing permissions and20** limitations under the License.21*/2223/*24** This header is generated from the Khronos Vulkan XML API Registry.25**26*/272829#define VK_KHR_android_surface 130struct ANativeWindow;3132#define VK_KHR_ANDROID_SURFACE_SPEC_VERSION 633#define VK_KHR_ANDROID_SURFACE_EXTENSION_NAME "VK_KHR_android_surface"3435typedef VkFlags VkAndroidSurfaceCreateFlagsKHR;3637typedef struct VkAndroidSurfaceCreateInfoKHR {38VkStructureType sType;39const void* pNext;40VkAndroidSurfaceCreateFlagsKHR flags;41struct ANativeWindow* window;42} VkAndroidSurfaceCreateInfoKHR;434445typedef VkResult (VKAPI_PTR *PFN_vkCreateAndroidSurfaceKHR)(VkInstance instance, const VkAndroidSurfaceCreateInfoKHR* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);4647#ifndef VK_NO_PROTOTYPES48VKAPI_ATTR VkResult VKAPI_CALL vkCreateAndroidSurfaceKHR(49VkInstance instance,50const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,51const VkAllocationCallbacks* pAllocator,52VkSurfaceKHR* pSurface);53#endif5455#define VK_ANDROID_external_memory_android_hardware_buffer 156struct AHardwareBuffer;5758#define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_SPEC_VERSION 359#define VK_ANDROID_EXTERNAL_MEMORY_ANDROID_HARDWARE_BUFFER_EXTENSION_NAME "VK_ANDROID_external_memory_android_hardware_buffer"6061typedef struct VkAndroidHardwareBufferUsageANDROID {62VkStructureType sType;63void* pNext;64uint64_t androidHardwareBufferUsage;65} VkAndroidHardwareBufferUsageANDROID;6667typedef struct VkAndroidHardwareBufferPropertiesANDROID {68VkStructureType sType;69void* pNext;70VkDeviceSize allocationSize;71uint32_t memoryTypeBits;72} VkAndroidHardwareBufferPropertiesANDROID;7374typedef struct VkAndroidHardwareBufferFormatPropertiesANDROID {75VkStructureType sType;76void* pNext;77VkFormat format;78uint64_t externalFormat;79VkFormatFeatureFlags formatFeatures;80VkComponentMapping samplerYcbcrConversionComponents;81VkSamplerYcbcrModelConversion suggestedYcbcrModel;82VkSamplerYcbcrRange suggestedYcbcrRange;83VkChromaLocation suggestedXChromaOffset;84VkChromaLocation suggestedYChromaOffset;85} VkAndroidHardwareBufferFormatPropertiesANDROID;8687typedef struct VkImportAndroidHardwareBufferInfoANDROID {88VkStructureType sType;89const void* pNext;90struct AHardwareBuffer* buffer;91} VkImportAndroidHardwareBufferInfoANDROID;9293typedef struct VkMemoryGetAndroidHardwareBufferInfoANDROID {94VkStructureType sType;95const void* pNext;96VkDeviceMemory memory;97} VkMemoryGetAndroidHardwareBufferInfoANDROID;9899typedef struct VkExternalFormatANDROID {100VkStructureType sType;101void* pNext;102uint64_t externalFormat;103} VkExternalFormatANDROID;104105106typedef VkResult (VKAPI_PTR *PFN_vkGetAndroidHardwareBufferPropertiesANDROID)(VkDevice device, const struct AHardwareBuffer* buffer, VkAndroidHardwareBufferPropertiesANDROID* pProperties);107typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryAndroidHardwareBufferANDROID)(VkDevice device, const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo, struct AHardwareBuffer** pBuffer);108109#ifndef VK_NO_PROTOTYPES110VKAPI_ATTR VkResult VKAPI_CALL vkGetAndroidHardwareBufferPropertiesANDROID(111VkDevice device,112const struct AHardwareBuffer* buffer,113VkAndroidHardwareBufferPropertiesANDROID* pProperties);114115VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryAndroidHardwareBufferANDROID(116VkDevice device,117const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,118struct AHardwareBuffer** pBuffer);119#endif120121#ifdef __cplusplus122}123#endif124125#endif126127128