Modulevulkan-3.27GHC2021
Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits
- 2 types
- Packagevulkan-3.27
- Exports5
- LanguageGHC2021
- LicenceBSD-3-Clause
- SourceExternalMemoryFeatureFlagBits.hs
VkExternalMemoryFeatureFlagBits - Bitmask specifying features of an external memory handle type
Description
EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT specifies that tensors, images or buffers created with the specified parameters and handle type must use the mechanisms defined by MemoryDedicatedRequirements and MemoryDedicatedAllocateInfo or MemoryDedicatedAllocateInfoTensorARM to create (or import) a dedicated allocation for the tensor, image or buffer.
EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT specifies that handles of this type can be exported from Vulkan memory objects.
EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT specifies that handles of this type can be imported as Vulkan memory objects.
Because their semantics in external APIs roughly align with that of an image or buffer with a dedicated allocation in Vulkan, implementations are required to report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for the following external handle types:
EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID for images only
EXTERNAL_MEMORY_HANDLE_TYPE_SCREEN_BUFFER_BIT_QNX for images only
Implementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID. Implementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_SCREEN_BUFFER_BIT_QNX. Implementations must not report EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT for tensors, images or buffers with external handle type EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, or EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT.
See Also
VK_KHR_external_memory_capabilities, VK_VERSION_1_1, ExternalMemoryFeatureFlags
Constructors
Instances8Eq, Ord, Read, Show, Bits, FiniteBits, …
Eq ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsOrd ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsRead ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsShow ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsBits ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsFiniteBits ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsStorable ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBitsZero ExternalMemoryFeatureFlagBitsDefined in vulkan-3.27 · Vulkan.Core11.Enums.ExternalMemoryFeatureFlagBits