Package org.lwjgl.vulkan
Class VkSubmitInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkSubmitInfo
-
- All Implemented Interfaces:
- java.lang.AutoCloseable, NativeResource, Pointer
public class VkSubmitInfo extends Struct
Khronos Reference Page
Vulkan SpecificationContains information about a batch of work.
Valid Usage
sTypemust beSTRUCTURE_TYPE_SUBMIT_INFOpNextmust beNULL- If
waitSemaphoreCountis not 0,pWaitSemaphoresmust be a pointer to an array ofwaitSemaphoreCountvalidVkSemaphorehandles - If
waitSemaphoreCountis not 0,pWaitDstStageMaskmust be a pointer to an array ofwaitSemaphoreCountvalid combinations ofVkPipelineStageFlagBitsvalues - Each element of
pWaitDstStageMaskmust not be 0 - If
commandBufferCountis not 0,pCommandBuffersmust be a pointer to an array ofcommandBufferCountvalidVkCommandBufferhandles - If
signalSemaphoreCountis not 0,pSignalSemaphoresmust be a pointer to an array ofsignalSemaphoreCountvalidVkSemaphorehandles - Each of the elements of
pWaitSemaphores, the elements ofpCommandBuffersand the elements ofpSignalSemaphoresthat are valid handles must have been created, allocated or retrieved from the sameVkDevice - Any given element of
pSignalSemaphoresmust currently be unsignaled - Any given element of
pCommandBuffersmust either have been recorded with theCOMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, or not currently be executing on the device - Any given element of
pCommandBuffersmust be in the executable state - If any given element of
pCommandBufferscontains commands that execute secondary command buffers, those secondary command buffers must have been recorded with theCOMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT, or not currently be executing on the device - If any given element of
pCommandBufferswas created withCOMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, it must not have been previously submitted without re-recording that command buffer - If any given element of
pCommandBufferscontains commands that execute secondary command buffers created withCOMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, each such secondary command buffer must not have been previously submitted without re-recording that command buffer - Any given element of
pCommandBuffersmust not contain commands that execute a secondary command buffer, if that secondary command buffer has been recorded in another primary command buffer after it was recorded into thisVkCommandBuffer - Any given element of
pCommandBuffersmust have been created on aVkCommandPoolthat was created for the same queue family that the calling command'squeuebelongs to - Any given element of
pCommandBuffersmust not have been created withCOMMAND_BUFFER_LEVEL_SECONDARY - Any given element of
VkSemaphoreinpWaitSemaphoresmust refer to a prior signal of thatVkSemaphorethat won't be consumed by any other wait on that semaphore - If the geometry shaders feature is not enabled, any given element of
pWaitDstStageMaskmust not containPIPELINE_STAGE_GEOMETRY_SHADER_BIT - If the tessellation shaders feature is not enabled, any given element of
pWaitDstStageMaskmust not containPIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BITorPIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT
Member documentation
sType– the type of this structure. Must be:STRUCTURE_TYPE_SUBMIT_INFOpNext– reserved for use by extensionswaitSemaphoreCount– the number of semaphores upon which to wait before executing the command buffers for the batchpWaitSemaphores– a pointer to an array of semaphores upon which to wait before executing the command buffers in the batchpWaitDstStageMask– a pointer to an array of pipeline stages at which each corresponding semaphore wait will occurcommandBufferCount– contains the number of command buffers to execute in the batchpCommandBuffers– a pointer to an array of command buffers to execute in the batchsignalSemaphoreCount– the number of semaphores to be signaled once the commands specified inpCommandBuffershave completed executionpSignalSemaphores– a pointer to an array of semaphores which will be signaled when the command buffers for this batch have completed execution
Layout
struct VkSubmitInfo { VkStructureType sType; const void * pNext; uint32_t waitSemaphoreCount; const VkSemaphore * pWaitSemaphores; const VkPipelineStageFlags * pWaitDstStageMask; uint32_t commandBufferCount; const VkCommandBuffer * pCommandBuffers; uint32_t signalSemaphoreCount; const VkSemaphore * pSignalSemaphores; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static classVkSubmitInfo.BufferAn array ofVkSubmitInfostructs.-
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
-
Field Summary
Fields Modifier and Type Field and Description static intSIZEOFThe struct size in bytes.-
Fields inherited from interface org.lwjgl.system.Pointer
POINTER_SHIFT, POINTER_SIZE
-
-
Constructor Summary
Constructors Constructor and Description VkSubmitInfo(java.nio.ByteBuffer container)Creates aVkSubmitInfoinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description static VkSubmitInfocalloc()Returns a newVkSubmitInfoinstance allocated withmemCalloc.static VkSubmitInfo.Buffercalloc(int capacity)Returns a newVkSubmitInfo.Bufferinstance allocated withmemCalloc.static VkSubmitInfocallocStack()Returns a newVkSubmitInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkSubmitInfo.BuffercallocStack(int capacity)Returns a newVkSubmitInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkSubmitInfo.BuffercallocStack(int capacity, MemoryStack stack)Returns a newVkSubmitInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkSubmitInfocallocStack(MemoryStack stack)Returns a newVkSubmitInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.intcommandBufferCount()Returns the value of thecommandBufferCountfield.static VkSubmitInfocreate()Returns a newVkSubmitInfoinstance allocated withBufferUtils.static VkSubmitInfo.Buffercreate(int capacity)Returns a newVkSubmitInfo.Bufferinstance allocated withBufferUtils.static VkSubmitInfocreate(long address)Returns a newVkSubmitInfoinstance for the specified memory address ornullif the address isNULL.static VkSubmitInfo.Buffercreate(long address, int capacity)Create aVkSubmitInfo.Bufferinstance at the specified memory.static VkSubmitInfomalloc()Returns a newVkSubmitInfoinstance allocated withmemAlloc.static VkSubmitInfo.Buffermalloc(int capacity)Returns a newVkSubmitInfo.Bufferinstance allocated withmemAlloc.static VkSubmitInfomallocStack()Returns a newVkSubmitInfoinstance allocated on the thread-localMemoryStack.static VkSubmitInfo.BuffermallocStack(int capacity)Returns a newVkSubmitInfo.Bufferinstance allocated on the thread-localMemoryStack.static VkSubmitInfo.BuffermallocStack(int capacity, MemoryStack stack)Returns a newVkSubmitInfo.Bufferinstance allocated on the specifiedMemoryStack.static VkSubmitInfomallocStack(MemoryStack stack)Returns a newVkSubmitInfoinstance allocated on the specifiedMemoryStack.VkSubmitInfonset(long struct)Unsafe version ofset.PointerBufferpCommandBuffers()Returns aPointerBufferview of the data pointed to by thepCommandBuffersfield.VkSubmitInfopCommandBuffers(PointerBuffer value)Sets the address of the specifiedPointerBufferto thepCommandBuffersfield.longpNext()Returns the value of thepNextfield.VkSubmitInfopNext(long value)Sets the specified value to thepNextfield.java.nio.LongBufferpSignalSemaphores()Returns aLongBufferview of the data pointed to by thepSignalSemaphoresfield.VkSubmitInfopSignalSemaphores(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepSignalSemaphoresfield.java.nio.IntBufferpWaitDstStageMask()Returns aIntBufferview of the data pointed to by thepWaitDstStageMaskfield.VkSubmitInfopWaitDstStageMask(java.nio.IntBuffer value)Sets the address of the specifiedIntBufferto thepWaitDstStageMaskfield.java.nio.LongBufferpWaitSemaphores()Returns aLongBufferview of the data pointed to by thepWaitSemaphoresfield.VkSubmitInfopWaitSemaphores(java.nio.LongBuffer value)Sets the address of the specifiedLongBufferto thepWaitSemaphoresfield.VkSubmitInfoset(int sType, long pNext, int waitSemaphoreCount, java.nio.LongBuffer pWaitSemaphores, java.nio.IntBuffer pWaitDstStageMask, PointerBuffer pCommandBuffers, java.nio.LongBuffer pSignalSemaphores)Initializes this struct with the specified values.VkSubmitInfoset(VkSubmitInfo src)Copies the specified struct data to this struct.intsignalSemaphoreCount()Returns the value of thesignalSemaphoreCountfield.intsizeof()Returns thesizeof(struct).intsType()Returns the value of thesTypefield.VkSubmitInfosType(int value)Sets the specified value to thesTypefield.static voidvalidate(long struct)Validates pointer members that should not beNULL.static voidvalidate(long array, int count)CallsVkSubmitInfo.validate(long)for each struct contained in the specified struct array.intwaitSemaphoreCount()Returns the value of thewaitSemaphoreCountfield.VkSubmitInfowaitSemaphoreCount(int value)Sets the specified value to thewaitSemaphoreCountfield.-
Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
Methods inherited from interface org.lwjgl.system.NativeResource
close
-
-
-
-
Constructor Detail
-
VkSubmitInfo
public VkSubmitInfo(java.nio.ByteBuffer container)
Creates aVkSubmitInfoinstance at the current position of the specifiedByteBuffercontainer. 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()
Description copied from class:StructReturns thesizeof(struct).
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
waitSemaphoreCount
public int waitSemaphoreCount()
Returns the value of thewaitSemaphoreCountfield.
-
pWaitSemaphores
public java.nio.LongBuffer pWaitSemaphores()
Returns aLongBufferview of the data pointed to by thepWaitSemaphoresfield.
-
pWaitDstStageMask
public java.nio.IntBuffer pWaitDstStageMask()
Returns aIntBufferview of the data pointed to by thepWaitDstStageMaskfield.
-
commandBufferCount
public int commandBufferCount()
Returns the value of thecommandBufferCountfield.
-
pCommandBuffers
public PointerBuffer pCommandBuffers()
Returns aPointerBufferview of the data pointed to by thepCommandBuffersfield.
-
signalSemaphoreCount
public int signalSemaphoreCount()
Returns the value of thesignalSemaphoreCountfield.
-
pSignalSemaphores
public java.nio.LongBuffer pSignalSemaphores()
Returns aLongBufferview of the data pointed to by thepSignalSemaphoresfield.
-
sType
public VkSubmitInfo sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkSubmitInfo pNext(long value)
Sets the specified value to thepNextfield.
-
waitSemaphoreCount
public VkSubmitInfo waitSemaphoreCount(int value)
Sets the specified value to thewaitSemaphoreCountfield.
-
pWaitSemaphores
public VkSubmitInfo pWaitSemaphores(java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepWaitSemaphoresfield.
-
pWaitDstStageMask
public VkSubmitInfo pWaitDstStageMask(java.nio.IntBuffer value)
Sets the address of the specifiedIntBufferto thepWaitDstStageMaskfield.
-
pCommandBuffers
public VkSubmitInfo pCommandBuffers(PointerBuffer value)
Sets the address of the specifiedPointerBufferto thepCommandBuffersfield.
-
pSignalSemaphores
public VkSubmitInfo pSignalSemaphores(java.nio.LongBuffer value)
Sets the address of the specifiedLongBufferto thepSignalSemaphoresfield.
-
set
public VkSubmitInfo set(int sType, long pNext, int waitSemaphoreCount, java.nio.LongBuffer pWaitSemaphores, java.nio.IntBuffer pWaitDstStageMask, PointerBuffer pCommandBuffers, java.nio.LongBuffer pSignalSemaphores)
Initializes this struct with the specified values.
-
nset
public VkSubmitInfo nset(long struct)
Unsafe version ofset.
-
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 newVkSubmitInfoinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkSubmitInfo calloc()
Returns a newVkSubmitInfoinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkSubmitInfo create()
Returns a newVkSubmitInfoinstance allocated withBufferUtils.
-
create
public static VkSubmitInfo create(long address)
Returns a newVkSubmitInfoinstance for the specified memory address ornullif the address isNULL.
-
malloc
public static VkSubmitInfo.Buffer malloc(int capacity)
Returns a newVkSubmitInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkSubmitInfo.Buffer calloc(int capacity)
Returns a newVkSubmitInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubmitInfo.Buffer create(int capacity)
Returns a newVkSubmitInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkSubmitInfo.Buffer create(long address, int capacity)
Create aVkSubmitInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
mallocStack
public static VkSubmitInfo mallocStack()
Returns a newVkSubmitInfoinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkSubmitInfo callocStack()
Returns a newVkSubmitInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkSubmitInfo mallocStack(MemoryStack stack)
Returns a newVkSubmitInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkSubmitInfo callocStack(MemoryStack stack)
Returns a newVkSubmitInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkSubmitInfo.Buffer mallocStack(int capacity)
Returns a newVkSubmitInfo.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkSubmitInfo.Buffer callocStack(int capacity)
Returns a newVkSubmitInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkSubmitInfo.Buffer mallocStack(int capacity, MemoryStack stack)
Returns a newVkSubmitInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkSubmitInfo.Buffer callocStack(int capacity, MemoryStack stack)
Returns a newVkSubmitInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
validate
public static void validate(long array, int count)CallsVkSubmitInfo.validate(long)for each struct contained in the specified struct array.- Parameters:
array- the struct array to validatecount- the number of structs inarray
-
-