Enum

VkAddressCommandFlagBitsKHR

Bitmask specifying address copy parameters

Bits which can be set in a VkAddressCommandFlagsKHR mask are:

typedef enum VkAddressCommandFlagBitsKHR {
    VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR = 0x00000001,
    VK_ADDRESS_COMMAND_FULLY_BOUND_BIT_KHR = 0x00000002,
    VK_ADDRESS_COMMAND_STORAGE_BUFFER_USAGE_BIT_KHR = 0x00000004,
    VK_ADDRESS_COMMAND_UNKNOWN_STORAGE_BUFFER_USAGE_BIT_KHR = 0x00000008,
} VkAddressCommandFlagBitsKHR;
  • VK_ADDRESS_COMMAND_PROTECTED_BIT_KHR specifies that an address range is allocated from protected memory.
  • VK_ADDRESS_COMMAND_FULLY_BOUND_BIT_KHR specifies that an address range will be fully bound to physical memory when accessed.
  • VK_ADDRESS_COMMAND_STORAGE_BUFFER_USAGE_BIT_KHR specifies that all buffers containing any part of an address range were created with the VK_BUFFER_USAGE_STORAGE_BUFFER_BIT usage.
  • VK_ADDRESS_COMMAND_UNKNOWN_STORAGE_BUFFER_USAGE_BIT_KHR specifies that whether buffers containing an any part of an address range were created with VK_BUFFER_USAGE_STORAGE_BUFFER_BIT usage or not is unknown.
  • VK_ADDRESS_COMMAND_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR specifies that all buffers containing any part of an address range are allocated with the VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT usage.
  • VK_ADDRESS_COMMAND_UNKNOWN_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR specifies that whether buffers containing an any part of an address range were created with VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT usage or not is unknown.

If neither VK_ADDRESS_COMMAND_STORAGE_BUFFER_USAGE_BIT_KHR nor VK_ADDRESS_COMMAND_UNKNOWN_STORAGE_BUFFER_USAGE_BIT_KHR are specified, the address range must not be aliased with any buffer allocated with the VK_BUFFER_USAGE_STORAGE_BUFFER_BIT. If neither VK_ADDRESS_COMMAND_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR nor VK_ADDRESS_COMMAND_UNKNOWN_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR are specified, the address range must not be aliased with any buffer allocated with the VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT.

Buffers can return overlapping address ranges if they are bound to overlapping ranges of a VkDeviceMemory object. Applications should ensure that if they do this kind of aliasing, that they consistently either include or do not include VK_BUFFER_USAGE_STORAGE_BUFFER_BIT and VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT on aliased buffers when considering these flags.