Class VkMemoryType

  • All Implemented Interfaces:
    org.lwjgl.system.Pointer

    public class VkMemoryType
    extends org.lwjgl.system.Struct
    Structure specifying memory type.

    Member documentation

    • propertyFlags – a bitmask of VkMemoryPropertyFlagBits of properties for this memory type.
    • heapIndex – describes which memory heap this memory type corresponds to, and must be less than memoryHeapCount from the VkPhysicalDeviceMemoryProperties structure.

    Layout

    
     struct VkMemoryType {
         VkMemoryPropertyFlags propertyFlags;
         uint32_t heapIndex;
     }
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  VkMemoryType.Buffer
      An array of VkMemoryType structs.
      • Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer

        org.lwjgl.system.Pointer.Default
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ALIGNOF
      The struct alignment in bytes.
      static int HEAPINDEX
      PROPERTYFLAGS
      The struct member offsets.
      static int SIZEOF
      The struct size in bytes.
      • Fields inherited from interface org.lwjgl.system.Pointer

        BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
    • Constructor Summary

      Constructors 
      Constructor Description
      VkMemoryType​(java.nio.ByteBuffer container)
      Creates a VkMemoryType instance at the current position of the specified ByteBuffer container.
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • PROPERTYFLAGS, HEAPINDEX

        The struct member offsets.
    • Constructor Detail

      • VkMemoryType

        public VkMemoryType​(java.nio.ByteBuffer container)
        Creates a VkMemoryType 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.

    • Method Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • propertyFlags

        public int propertyFlags()
        Returns the value of the propertyFlags field.
      • heapIndex

        public int heapIndex()
        Returns the value of the heapIndex field.
      • create

        public static VkMemoryType create​(long address)
        Returns a new VkMemoryType instance for the specified memory address.
      • createSafe

        @Nullable
        public static VkMemoryType createSafe​(long address)
        Like create, but returns null if address is NULL.
      • create

        public static VkMemoryType.Buffer create​(long address,
                                                 int capacity)
        Create a VkMemoryType.Buffer instance at the specified memory.
        Parameters:
        address - the memory address
        capacity - the buffer capacity
      • createSafe

        @Nullable
        public static VkMemoryType.Buffer createSafe​(long address,
                                                     int capacity)
        Like create, but returns null if address is NULL.
      • npropertyFlags

        public static int npropertyFlags​(long struct)
        Unsafe version of propertyFlags().
      • nheapIndex

        public static int nheapIndex​(long struct)
        Unsafe version of heapIndex().