C Specification

To determine the memory parameters to use when importing an Open Harmony OS native buffer:

// Provided by VK_OHOS_external_memory
VkResult vkGetNativeBufferPropertiesOHOS(
    VkDevice                                    device,
    const struct OH_NativeBuffer*               buffer,
    VkNativeBufferPropertiesOHOS*               pProperties);

Parameters

  • device is the logical device that will be importing buffer.

  • buffer is the OH_NativeBuffer object specifies the buffer for which its properties are to be queried.

  • pProperties is a pointer to a VkNativeBufferPropertiesOHOS structure in which the properties of buffer are returned.

Description

Valid Usage (Implicit)
  • VUID-vkGetNativeBufferPropertiesOHOS-device-parameter
    device must be a valid VkDevice handle

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

  • VUID-vkGetNativeBufferPropertiesOHOS-pProperties-parameter
    pProperties must be a valid pointer to a VkNativeBufferPropertiesOHOS structure

Return Codes
On success, this command returns
  • VK_SUCCESS

On failure, this command returns
  • VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR

  • VK_ERROR_OUT_OF_DEVICE_MEMORY

  • VK_ERROR_UNKNOWN

  • VK_ERROR_VALIDATION_FAILED

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