C Specification

To import memory created outside of the current Vulkan instance from an Open Harmony OS native buffer, add a VkImportNativeBufferInfoOHOS structure to the pNext chain of the VkMemoryAllocateInfo structure. The VkImportNativeBufferInfoOHOS structure is defined as:

// Provided by VK_OHOS_external_memory
typedef struct VkImportNativeBufferInfoOHOS {
    VkStructureType            sType;
    const void*                pNext;
    struct OH_NativeBuffer*    buffer;
} VkImportNativeBufferInfoOHOS;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • buffer is a pointer to an OH_NativeBuffer structure.

Description

A reference to the imported native buffer should be acquired by the implementation if the vkAllocateMemory command succeeds. Then the reference must release when the device memory object is freed. If the command fails, the implementation must not retain a reference.

Valid Usage (Implicit)
  • VUID-VkImportNativeBufferInfoOHOS-sType-sType
    sType must be VK_STRUCTURE_TYPE_IMPORT_NATIVE_BUFFER_INFO_OHOS

  • VUID-VkImportNativeBufferInfoOHOS-buffer-parameter
    buffer must be a valid pointer to an OH_NativeBuffer value

See Also

Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2025 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0