## C Specification

To define a set of external memory handle types that may be used as backing store for a buffer, add a VkExternalMemoryBufferCreateInfo structure to the pNext chain of the VkBufferCreateInfo structure. The VkExternalMemoryBufferCreateInfo structure is defined as:

// Provided by VK_VERSION_1_1
typedef struct VkExternalMemoryBufferCreateInfo {
VkStructureType                    sType;
const void*                        pNext;
VkExternalMemoryHandleTypeFlags    handleTypes;
} VkExternalMemoryBufferCreateInfo;

or the equivalent

// Provided by VK_KHR_external_memory
typedef VkExternalMemoryBufferCreateInfo VkExternalMemoryBufferCreateInfoKHR;

## Members

 Note A VkExternalMemoryBufferCreateInfo structure must be included in the creation parameters for a buffer that will be bound to memory that is either exported or imported.

## Description

• sType is the type of this structure.

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

• handleTypes is a bitmask of VkExternalMemoryHandleTypeFlagBits specifying one or more external memory handle types.

Valid Usage (Implicit)
• sType must be VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO

• handleTypes must be a valid combination of VkExternalMemoryHandleTypeFlagBits values