| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- #ifndef VULKAN_OHOS_H_
- #define VULKAN_OHOS_H_ 1
- /*
- ** Copyright 2015-2025 The Khronos Group Inc.
- **
- ** SPDX-License-Identifier: Apache-2.0
- */
- /*
- ** This header is generated from the Khronos Vulkan XML API Registry.
- **
- */
- #ifdef __cplusplus
- extern "C" {
- #endif
- // VK_OHOS_external_memory is a preprocessor guard. Do not pass it to API calls.
- #define VK_OHOS_external_memory 1
- struct OH_NativeBuffer;
- #define VK_OHOS_EXTERNAL_MEMORY_SPEC_VERSION 1
- #define VK_OHOS_EXTERNAL_MEMORY_EXTENSION_NAME "VK_OHOS_external_memory"
- typedef struct VkNativeBufferUsageOHOS {
- VkStructureType sType;
- void* pNext;
- uint64_t OHOSNativeBufferUsage;
- } VkNativeBufferUsageOHOS;
- typedef struct VkNativeBufferPropertiesOHOS {
- VkStructureType sType;
- void* pNext;
- VkDeviceSize allocationSize;
- uint32_t memoryTypeBits;
- } VkNativeBufferPropertiesOHOS;
- typedef struct VkNativeBufferFormatPropertiesOHOS {
- VkStructureType sType;
- void* pNext;
- VkFormat format;
- uint64_t externalFormat;
- VkFormatFeatureFlags formatFeatures;
- VkComponentMapping samplerYcbcrConversionComponents;
- VkSamplerYcbcrModelConversion suggestedYcbcrModel;
- VkSamplerYcbcrRange suggestedYcbcrRange;
- VkChromaLocation suggestedXChromaOffset;
- VkChromaLocation suggestedYChromaOffset;
- } VkNativeBufferFormatPropertiesOHOS;
- typedef struct VkImportNativeBufferInfoOHOS {
- VkStructureType sType;
- const void* pNext;
- struct OH_NativeBuffer* buffer;
- } VkImportNativeBufferInfoOHOS;
- typedef struct VkMemoryGetNativeBufferInfoOHOS {
- VkStructureType sType;
- const void* pNext;
- VkDeviceMemory memory;
- } VkMemoryGetNativeBufferInfoOHOS;
- typedef struct VkExternalFormatOHOS {
- VkStructureType sType;
- void* pNext;
- uint64_t externalFormat;
- } VkExternalFormatOHOS;
- typedef VkResult (VKAPI_PTR *PFN_vkGetNativeBufferPropertiesOHOS)(VkDevice device, const struct OH_NativeBuffer* buffer, VkNativeBufferPropertiesOHOS* pProperties);
- typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryNativeBufferOHOS)(VkDevice device, const VkMemoryGetNativeBufferInfoOHOS* pInfo, struct OH_NativeBuffer** pBuffer);
- #ifndef VK_NO_PROTOTYPES
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkResult VKAPI_CALL vkGetNativeBufferPropertiesOHOS(
- VkDevice device,
- const struct OH_NativeBuffer* buffer,
- VkNativeBufferPropertiesOHOS* pProperties);
- #endif
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryNativeBufferOHOS(
- VkDevice device,
- const VkMemoryGetNativeBufferInfoOHOS* pInfo,
- struct OH_NativeBuffer** pBuffer);
- #endif
- #endif
- // VK_OHOS_surface is a preprocessor guard. Do not pass it to API calls.
- #define VK_OHOS_surface 1
- typedef struct NativeWindow OHNativeWindow;
- #define VK_OHOS_SURFACE_SPEC_VERSION 1
- #define VK_OHOS_SURFACE_EXTENSION_NAME "VK_OHOS_surface"
- typedef VkFlags VkSurfaceCreateFlagsOHOS;
- typedef struct VkSurfaceCreateInfoOHOS {
- VkStructureType sType;
- const void* pNext;
- VkSurfaceCreateFlagsOHOS flags;
- OHNativeWindow* window;
- } VkSurfaceCreateInfoOHOS;
- typedef VkResult (VKAPI_PTR *PFN_vkCreateSurfaceOHOS)(VkInstance instance, const VkSurfaceCreateInfoOHOS* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
- #ifndef VK_NO_PROTOTYPES
- #ifndef VK_ONLY_EXPORTED_PROTOTYPES
- VKAPI_ATTR VkResult VKAPI_CALL vkCreateSurfaceOHOS(
- VkInstance instance,
- const VkSurfaceCreateInfoOHOS* pCreateInfo,
- const VkAllocationCallbacks* pAllocator,
- VkSurfaceKHR* pSurface);
- #endif
- #endif
- #ifdef __cplusplus
- }
- #endif
- #endif
|