Class VkMemoryType

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkMemoryType>
org.lwjgl.vulkan.VkMemoryType
All Implemented Interfaces:
org.lwjgl.system.Pointer

public class VkMemoryType extends org.lwjgl.system.Struct<VkMemoryType>
Structure specifying memory type.
See Also

VkPhysicalDeviceMemoryProperties

Layout


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

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    An array of VkMemoryType structs.

    Nested classes/interfaces inherited from class org.lwjgl.system.Struct

    org.lwjgl.system.Struct.StructValidation

    Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer

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

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The struct alignment in bytes.
    static final int
    The struct member offsets.
    static final int
    The struct member offsets.
    static final int
    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
    Creates a VkMemoryType instance at the current position of the specified ByteBuffer container.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(long address)
    Returns a new VkMemoryType instance for the specified memory address.
    create(long address, int capacity)
    Create a VkMemoryType.Buffer instance at the specified memory.
    static @Nullable VkMemoryType
    createSafe(long address)
    Like create, but returns null if address is NULL.
    static @Nullable VkMemoryType.Buffer
    createSafe(long address, int capacity)
    Like create, but returns null if address is NULL.
    int
    describes which memory heap this memory type corresponds to, and must be less than memoryHeapCount from the VkPhysicalDeviceMemoryProperties structure.
    static int
    nheapIndex(long struct)
    Unsafe version of heapIndex().
    static int
    npropertyFlags(long struct)
    Unsafe version of propertyFlags().
    int
    a bitmask of VkMemoryPropertyFlagBits of properties for this memory type.
    int
     

    Methods inherited from class org.lwjgl.system.Struct

    clear, free, isNull, validate, validate

    Methods inherited from class org.lwjgl.system.Pointer.Default

    address, equals, hashCode, toString

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • PROPERTYFLAGS

      public static final int PROPERTYFLAGS
      The struct member offsets.
    • HEAPINDEX

      public static final int HEAPINDEX
      The struct member offsets.
  • Constructor Details

    • VkMemoryType

      public VkMemoryType(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 Details

    • sizeof

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

      public int propertyFlags()
      a bitmask of VkMemoryPropertyFlagBits of properties for this memory type.
    • heapIndex

      public int heapIndex()
      describes which memory heap this memory type corresponds to, and must be less than memoryHeapCount from the VkPhysicalDeviceMemoryProperties structure.
    • create

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

      public static @Nullable 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

      public static @Nullable 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().