Class VkSubmitInfo

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkSubmitInfo>
org.lwjgl.vulkan.VkSubmitInfo
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkSubmitInfo extends org.lwjgl.system.Struct<VkSubmitInfo> implements org.lwjgl.system.NativeResource
Structure specifying a queue submit operation.
Description

The order that command buffers appear in pCommandBuffers is used to determine submission order, and thus all the implicit ordering guarantees that respect it. Other than these implicit ordering guarantees and any explicit synchronization primitives, these command buffers may overlap or otherwise execute out of order.

Valid Usage
Valid Usage (Implicit)
See Also

QueueSubmit

Layout


 struct VkSubmitInfo {
     VkStructureType sType();
     void const * pNext();
     uint32_t waitSemaphoreCount();
     VkSemaphore const * pWaitSemaphores();
     VkPipelineStageFlags const * pWaitDstStageMask();
     uint32_t commandBufferCount();
     VkCommandBuffer const * pCommandBuffers();
     uint32_t signalSemaphoreCount();
     VkSemaphore const * pSignalSemaphores();
 }
  • 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.
    • WAITSEMAPHORECOUNT

      public static final int WAITSEMAPHORECOUNT
      The struct member offsets.
    • PWAITSEMAPHORES

      public static final int PWAITSEMAPHORES
      The struct member offsets.
    • PWAITDSTSTAGEMASK

      public static final int PWAITDSTSTAGEMASK
      The struct member offsets.
    • COMMANDBUFFERCOUNT

      public static final int COMMANDBUFFERCOUNT
      The struct member offsets.
    • PCOMMANDBUFFERS

      public static final int PCOMMANDBUFFERS
      The struct member offsets.
    • SIGNALSEMAPHORECOUNT

      public static final int SIGNALSEMAPHORECOUNT
      The struct member offsets.
    • PSIGNALSEMAPHORES

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

    • VkSubmitInfo

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

      public int sType()
      a VkStructureType value identifying this structure.
    • pNext

      public long pNext()
      NULL or a pointer to a structure extending this structure.
    • waitSemaphoreCount

      public int waitSemaphoreCount()
      the number of semaphores upon which to wait before executing the command buffers for the batch.
    • pWaitSemaphores

      public @Nullable LongBuffer pWaitSemaphores()
      a pointer to an array of VkSemaphore handles upon which to wait before the command buffers for this batch begin execution. If semaphores to wait on are provided, they define a semaphore wait operation.
    • pWaitDstStageMask

      public @Nullable IntBuffer pWaitDstStageMask()
      a pointer to an array of pipeline stages at which each corresponding semaphore wait will occur.
    • commandBufferCount

      public int commandBufferCount()
      the number of command buffers to execute in the batch.
    • pCommandBuffers

      public @Nullable org.lwjgl.PointerBuffer pCommandBuffers()
      a pointer to an array of VkCommandBuffer handles to execute in the batch.
    • signalSemaphoreCount

      public int signalSemaphoreCount()
      the number of semaphores to be signaled once the commands specified in pCommandBuffers have completed execution.
    • pSignalSemaphores

      public @Nullable LongBuffer pSignalSemaphores()
      a pointer to an array of VkSemaphore handles which will be signaled when the command buffers for this batch have completed execution. If semaphores to be signaled are provided, they define a semaphore signal operation.
    • sType

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

      public VkSubmitInfo sType$Default()
      Sets the STRUCTURE_TYPE_SUBMIT_INFO value to the sType() field.
    • pNext

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

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

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

      public VkSubmitInfo pNext(VkDeviceGroupSubmitInfo value)
      Prepends the specified VkDeviceGroupSubmitInfo value to the pNext chain.
    • pNext

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

      public VkSubmitInfo pNext(VkFrameBoundaryEXT value)
      Prepends the specified VkFrameBoundaryEXT value to the pNext chain.
    • pNext

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

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

      public VkSubmitInfo pNext(VkProtectedSubmitInfo value)
      Prepends the specified VkProtectedSubmitInfo value to the pNext chain.
    • pNext

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

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

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

      Prepends the specified VkWin32KeyedMutexAcquireReleaseInfoNV value to the pNext chain.
    • waitSemaphoreCount

      public VkSubmitInfo waitSemaphoreCount(int value)
      Sets the specified value to the waitSemaphoreCount() field.
    • pWaitSemaphores

      public VkSubmitInfo pWaitSemaphores(@Nullable LongBuffer value)
      Sets the address of the specified LongBuffer to the pWaitSemaphores() field.
    • pWaitDstStageMask

      public VkSubmitInfo pWaitDstStageMask(@Nullable IntBuffer value)
      Sets the address of the specified IntBuffer to the pWaitDstStageMask() field.
    • pCommandBuffers

      public VkSubmitInfo pCommandBuffers(@Nullable org.lwjgl.PointerBuffer value)
      Sets the address of the specified PointerBuffer to the pCommandBuffers() field.
    • pSignalSemaphores

      public VkSubmitInfo pSignalSemaphores(@Nullable LongBuffer value)
      Sets the address of the specified LongBuffer to the pSignalSemaphores() field.
    • set

      public VkSubmitInfo set(int sType, long pNext, int waitSemaphoreCount, @Nullable LongBuffer pWaitSemaphores, @Nullable IntBuffer pWaitDstStageMask, @Nullable org.lwjgl.PointerBuffer pCommandBuffers, @Nullable LongBuffer pSignalSemaphores)
      Initializes this struct with the specified values.
    • set

      public VkSubmitInfo set(VkSubmitInfo src)
      Copies the specified struct data to this struct.
      Parameters:
      src - the source struct
      Returns:
      this struct
    • malloc

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

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

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

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

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

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

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

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

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

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

      @Deprecated public static VkSubmitInfo mallocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSubmitInfo callocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSubmitInfo mallocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSubmitInfo callocStack(org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSubmitInfo.Buffer mallocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSubmitInfo.Buffer callocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSubmitInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSubmitInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • malloc

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

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

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

      public static VkSubmitInfo.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkSubmitInfo.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().
    • nwaitSemaphoreCount

      public static int nwaitSemaphoreCount(long struct)
      Unsafe version of waitSemaphoreCount().
    • npWaitSemaphores

      public static @Nullable LongBuffer npWaitSemaphores(long struct)
      Unsafe version of pWaitSemaphores.
    • npWaitDstStageMask

      public static @Nullable IntBuffer npWaitDstStageMask(long struct)
      Unsafe version of pWaitDstStageMask.
    • ncommandBufferCount

      public static int ncommandBufferCount(long struct)
      Unsafe version of commandBufferCount().
    • npCommandBuffers

      public static @Nullable org.lwjgl.PointerBuffer npCommandBuffers(long struct)
      Unsafe version of pCommandBuffers.
    • nsignalSemaphoreCount

      public static int nsignalSemaphoreCount(long struct)
      Unsafe version of signalSemaphoreCount().
    • npSignalSemaphores

      public static @Nullable LongBuffer npSignalSemaphores(long struct)
      Unsafe version of pSignalSemaphores.
    • 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.
    • nwaitSemaphoreCount

      public static void nwaitSemaphoreCount(long struct, int value)
      Sets the specified value to the waitSemaphoreCount field of the specified struct.
    • npWaitSemaphores

      public static void npWaitSemaphores(long struct, @Nullable LongBuffer value)
      Unsafe version of pWaitSemaphores.
    • npWaitDstStageMask

      public static void npWaitDstStageMask(long struct, @Nullable IntBuffer value)
      Unsafe version of pWaitDstStageMask.
    • ncommandBufferCount

      public static void ncommandBufferCount(long struct, int value)
      Sets the specified value to the commandBufferCount field of the specified struct.
    • npCommandBuffers

      public static void npCommandBuffers(long struct, @Nullable org.lwjgl.PointerBuffer value)
      Unsafe version of pCommandBuffers.
    • nsignalSemaphoreCount

      public static void nsignalSemaphoreCount(long struct, int value)
      Sets the specified value to the signalSemaphoreCount field of the specified struct.
    • npSignalSemaphores

      public static void npSignalSemaphores(long struct, @Nullable LongBuffer value)
      Unsafe version of pSignalSemaphores.
    • validate

      public static void validate(long struct)
      Validates pointer members that should not be NULL.
      Parameters:
      struct - the struct to validate