Class VkMemoryHeap

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

public class VkMemoryHeap extends org.lwjgl.system.Struct<VkMemoryHeap>
Structure specifying a memory heap.
See Also

VkPhysicalDeviceMemoryProperties

Layout


 struct VkMemoryHeap {
     VkDeviceSize size();
     VkMemoryHeapFlags flags();
 }
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    An array of VkMemoryHeap 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 VkMemoryHeap instance at the current position of the specified ByteBuffer container.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(long address)
    Returns a new VkMemoryHeap instance for the specified memory address.
    create(long address, int capacity)
    Create a VkMemoryHeap.Buffer instance at the specified memory.
    static @Nullable VkMemoryHeap
    createSafe(long address)
    Like create, but returns null if address is NULL.
    static @Nullable VkMemoryHeap.Buffer
    createSafe(long address, int capacity)
    Like create, but returns null if address is NULL.
    int
    a bitmask of VkMemoryHeapFlagBits specifying attribute flags for the heap.
    static int
    nflags(long struct)
    Unsafe version of flags().
    static long
    nsize(long struct)
    Unsafe version of size().
    long
    the total memory size in bytes in the heap.
    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.
    • SIZE

      public static final int SIZE
      The struct member offsets.
    • FLAGS

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

    • VkMemoryHeap

      public VkMemoryHeap(ByteBuffer container)
      Creates a VkMemoryHeap 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<VkMemoryHeap>
    • size

      public long size()
      the total memory size in bytes in the heap.
    • flags

      public int flags()
      a bitmask of VkMemoryHeapFlagBits specifying attribute flags for the heap.
    • create

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

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

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

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

      public static long nsize(long struct)
      Unsafe version of size().
    • nflags

      public static int nflags(long struct)
      Unsafe version of flags().