Class VkMemoryAllocateFlagsInfo

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer
    Direct Known Subclasses:
    VkMemoryAllocateFlagsInfoKHR

    public class VkMemoryAllocateFlagsInfo
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure controlling how many instances of memory will be allocated.
    Description

    If MEMORY_ALLOCATE_DEVICE_MASK_BIT is not set, the number of instances allocated depends on whether MEMORY_HEAP_MULTI_INSTANCE_BIT is set in the memory heap. If MEMORY_HEAP_MULTI_INSTANCE_BIT is set, then memory is allocated for every physical device in the logical device (as if deviceMask has bits set for all device indices). If MEMORY_HEAP_MULTI_INSTANCE_BIT is not set, then a single instance of memory is allocated (as if deviceMask is set to one).

    On some implementations, allocations from a multi-instance heap may consume memory on all physical devices even if the deviceMask excludes some devices. If VkPhysicalDeviceGroupProperties::subsetAllocation is TRUE, then memory is only consumed for the devices in the device mask.

    Note

    In practice, most allocations on a multi-instance heap will be allocated across all physical devices. Unicast allocation support is an optional optimization for a minority of allocations.

    Valid Usage
    Valid Usage (Implicit)

    Layout

    
     struct VkMemoryAllocateFlagsInfo {
         VkStructureType sType();
         void const * pNext();
         VkMemoryAllocateFlags flags();
         uint32_t deviceMask();
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, FLAGS, DEVICEMASK

        The struct member offsets.
    • Constructor Detail

      • VkMemoryAllocateFlagsInfo

        public VkMemoryAllocateFlagsInfo​(java.nio.ByteBuffer container)
        Creates a VkMemoryAllocateFlagsInfo instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

        The created instance holds a strong reference to the container object.