Class VkImageMemoryBarrier

All Implemented Interfaces:
AutoCloseable, NativeResource, Pointer

public class VkImageMemoryBarrier extends Struct<VkImageMemoryBarrier> implements NativeResource

 struct VkImageMemoryBarrier {
     VkStructureType sType;
     void const * pNext;
     VkAccessFlags srcAccessMask;
     VkAccessFlags dstAccessMask;
     VkImageLayout oldLayout;
     VkImageLayout newLayout;
     uint32_t srcQueueFamilyIndex;
     uint32_t dstQueueFamilyIndex;
     VkImage image;
     VkImageSubresourceRange subresourceRange;
 }
  • Field Details

    • SIZEOF

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

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

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • SRCACCESSMASK

      public static final int SRCACCESSMASK
      The struct member offsets.
    • DSTACCESSMASK

      public static final int DSTACCESSMASK
      The struct member offsets.
    • OLDLAYOUT

      public static final int OLDLAYOUT
      The struct member offsets.
    • NEWLAYOUT

      public static final int NEWLAYOUT
      The struct member offsets.
    • SRCQUEUEFAMILYINDEX

      public static final int SRCQUEUEFAMILYINDEX
      The struct member offsets.
    • DSTQUEUEFAMILYINDEX

      public static final int DSTQUEUEFAMILYINDEX
      The struct member offsets.
    • IMAGE

      public static final int IMAGE
      The struct member offsets.
    • SUBRESOURCERANGE

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

    • VkImageMemoryBarrier

      public VkImageMemoryBarrier(ByteBuffer container)
      Creates a VkImageMemoryBarrier 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()
      Description copied from class: Struct
      Returns sizeof(struct).
      Specified by:
      sizeof in class Struct<VkImageMemoryBarrier>
    • sType

      public int sType()
      Returns:
      the value of the sType field.
    • pNext

      public long pNext()
      Returns:
      the value of the pNext field.
    • srcAccessMask

      public int srcAccessMask()
      Returns:
      the value of the srcAccessMask field.
    • dstAccessMask

      public int dstAccessMask()
      Returns:
      the value of the dstAccessMask field.
    • oldLayout

      public int oldLayout()
      Returns:
      the value of the oldLayout field.
    • newLayout

      public int newLayout()
      Returns:
      the value of the newLayout field.
    • srcQueueFamilyIndex

      public int srcQueueFamilyIndex()
      Returns:
      the value of the srcQueueFamilyIndex field.
    • dstQueueFamilyIndex

      public int dstQueueFamilyIndex()
      Returns:
      the value of the dstQueueFamilyIndex field.
    • image

      public long image()
      Returns:
      the value of the image field.
    • subresourceRange

      public VkImageSubresourceRange subresourceRange()
      Returns:
      a VkImageSubresourceRange view of the subresourceRange field.
    • sType

      public VkImageMemoryBarrier sType(int value)
      Sets the specified value to the sType field.
    • sType$Default

      public VkImageMemoryBarrier sType$Default()
      Sets the STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER value to the sType field.
    • pNext

      public VkImageMemoryBarrier pNext(long value)
      Sets the specified value to the pNext field.
    • pNext

      Prepends the specified VkExternalMemoryAcquireUnmodifiedEXT value to the pNext chain.
    • pNext

      Prepends the specified VkSampleLocationsInfoEXT value to the pNext chain.
    • srcAccessMask

      public VkImageMemoryBarrier srcAccessMask(int value)
      Sets the specified value to the srcAccessMask field.
    • dstAccessMask

      public VkImageMemoryBarrier dstAccessMask(int value)
      Sets the specified value to the dstAccessMask field.
    • oldLayout

      public VkImageMemoryBarrier oldLayout(int value)
      Sets the specified value to the oldLayout field.
    • newLayout

      public VkImageMemoryBarrier newLayout(int value)
      Sets the specified value to the newLayout field.
    • srcQueueFamilyIndex

      public VkImageMemoryBarrier srcQueueFamilyIndex(int value)
      Sets the specified value to the srcQueueFamilyIndex field.
    • dstQueueFamilyIndex

      public VkImageMemoryBarrier dstQueueFamilyIndex(int value)
      Sets the specified value to the dstQueueFamilyIndex field.
    • image

      public VkImageMemoryBarrier image(long value)
      Sets the specified value to the image field.
    • subresourceRange

      public VkImageMemoryBarrier subresourceRange(VkImageSubresourceRange value)
      Copies the specified VkImageSubresourceRange to the subresourceRange field.
    • subresourceRange

      public VkImageMemoryBarrier subresourceRange(Consumer<VkImageSubresourceRange> consumer)
      Passes the subresourceRange field to the specified Consumer.
    • set

      public VkImageMemoryBarrier set(int sType, long pNext, int srcAccessMask, int dstAccessMask, int oldLayout, int newLayout, int srcQueueFamilyIndex, int dstQueueFamilyIndex, long image, VkImageSubresourceRange subresourceRange)
      Initializes this struct with the specified values.
    • set

      Copies the specified struct data to this struct.
      Parameters:
      src - the source struct
      Returns:
      this struct
    • malloc

      public static VkImageMemoryBarrier malloc()
      Returns a new VkImageMemoryBarrier instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static VkImageMemoryBarrier calloc()
      Returns a new VkImageMemoryBarrier instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static VkImageMemoryBarrier create()
      Returns a new VkImageMemoryBarrier instance allocated with BufferUtils.
    • create

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

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

      public static VkImageMemoryBarrier.Buffer malloc(int capacity)
      Returns a new VkImageMemoryBarrier.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static VkImageMemoryBarrier.Buffer calloc(int capacity)
      Returns a new VkImageMemoryBarrier.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkImageMemoryBarrier.Buffer create(int capacity)
      Returns a new VkImageMemoryBarrier.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

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

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

      public static VkImageMemoryBarrier malloc(MemoryStack stack)
      Returns a new VkImageMemoryBarrier instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

      public static VkImageMemoryBarrier calloc(MemoryStack stack)
      Returns a new VkImageMemoryBarrier instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      stack - the stack from which to allocate
    • malloc

      public static VkImageMemoryBarrier.Buffer malloc(int capacity, MemoryStack stack)
      Returns a new VkImageMemoryBarrier.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static VkImageMemoryBarrier.Buffer calloc(int capacity, MemoryStack stack)
      Returns a new VkImageMemoryBarrier.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • nsType

      public static int nsType(long struct)
      Unsafe version of sType().
    • npNext

      public static long npNext(long struct)
      Unsafe version of pNext().
    • nsrcAccessMask

      public static int nsrcAccessMask(long struct)
      Unsafe version of srcAccessMask().
    • ndstAccessMask

      public static int ndstAccessMask(long struct)
      Unsafe version of dstAccessMask().
    • noldLayout

      public static int noldLayout(long struct)
      Unsafe version of oldLayout().
    • nnewLayout

      public static int nnewLayout(long struct)
      Unsafe version of newLayout().
    • nsrcQueueFamilyIndex

      public static int nsrcQueueFamilyIndex(long struct)
      Unsafe version of srcQueueFamilyIndex().
    • ndstQueueFamilyIndex

      public static int ndstQueueFamilyIndex(long struct)
      Unsafe version of dstQueueFamilyIndex().
    • nimage

      public static long nimage(long struct)
      Unsafe version of image().
    • nsubresourceRange

      public static VkImageSubresourceRange nsubresourceRange(long struct)
      Unsafe version of subresourceRange().
    • nsType

      public static void nsType(long struct, int value)
      Unsafe version of sType.
    • npNext

      public static void npNext(long struct, long value)
      Unsafe version of pNext.
    • nsrcAccessMask

      public static void nsrcAccessMask(long struct, int value)
      Unsafe version of srcAccessMask.
    • ndstAccessMask

      public static void ndstAccessMask(long struct, int value)
      Unsafe version of dstAccessMask.
    • noldLayout

      public static void noldLayout(long struct, int value)
      Unsafe version of oldLayout.
    • nnewLayout

      public static void nnewLayout(long struct, int value)
      Unsafe version of newLayout.
    • nsrcQueueFamilyIndex

      public static void nsrcQueueFamilyIndex(long struct, int value)
      Unsafe version of srcQueueFamilyIndex.
    • ndstQueueFamilyIndex

      public static void ndstQueueFamilyIndex(long struct, int value)
      Unsafe version of dstQueueFamilyIndex.
    • nimage

      public static void nimage(long struct, long value)
      Unsafe version of image.
    • nsubresourceRange

      public static void nsubresourceRange(long struct, VkImageSubresourceRange value)
      Unsafe version of subresourceRange.