- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanSubmitInfo
-
- All Implemented Interfaces:
VulkanSubmitInfoType
public final class VulkanSubmitInfo extends java.lang.Object implements VulkanSubmitInfoType
The type of Vulkan submission information.- See Also:
- "VkSubmitInfo"
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VulkanSubmitInfo.Builder
Builds instances of typeVulkanSubmitInfo
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VulkanSubmitInfo.Builder
builder()
Creates a builder forVulkanSubmitInfo
.java.util.List<VulkanCommandBufferType>
commandBuffers()
static VulkanSubmitInfo
copyOf(VulkanSubmitInfoType instance)
Creates an immutable copy of aVulkanSubmitInfoType
value.boolean
equals(java.lang.Object another)
This instance is equal to all instances ofVulkanSubmitInfo
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:waitSemaphores
,waitStageMasks
,commandBuffers
,signalSemaphores
.static VulkanSubmitInfo
of(java.lang.Iterable<? extends VulkanSemaphoreType> waitSemaphores, java.lang.Iterable<? extends VulkanPipelineStageFlag> waitStageMasks, java.lang.Iterable<? extends VulkanCommandBufferType> commandBuffers, java.lang.Iterable<? extends VulkanSemaphoreType> signalSemaphores)
Construct a new immutableVulkanSubmitInfo
instance.static VulkanSubmitInfo
of(java.util.List<VulkanSemaphoreType> waitSemaphores, java.util.List<VulkanPipelineStageFlag> waitStageMasks, java.util.List<VulkanCommandBufferType> commandBuffers, java.util.List<VulkanSemaphoreType> signalSemaphores)
Construct a new immutableVulkanSubmitInfo
instance.java.util.List<VulkanSemaphoreType>
signalSemaphores()
java.lang.String
toString()
Prints the immutable valueVulkanSubmitInfo
with attribute values.java.util.List<VulkanSemaphoreType>
waitSemaphores()
java.util.List<VulkanPipelineStageFlag>
waitStageMasks()
VulkanSubmitInfo
withCommandBuffers(VulkanCommandBufferType... elements)
Copy the current immutable object with elements that replace the content ofcommandBuffers
.VulkanSubmitInfo
withCommandBuffers(java.lang.Iterable<? extends VulkanCommandBufferType> elements)
Copy the current immutable object with elements that replace the content ofcommandBuffers
.VulkanSubmitInfo
withSignalSemaphores(VulkanSemaphoreType... elements)
Copy the current immutable object with elements that replace the content ofsignalSemaphores
.VulkanSubmitInfo
withSignalSemaphores(java.lang.Iterable<? extends VulkanSemaphoreType> elements)
Copy the current immutable object with elements that replace the content ofsignalSemaphores
.VulkanSubmitInfo
withWaitSemaphores(VulkanSemaphoreType... elements)
Copy the current immutable object with elements that replace the content ofwaitSemaphores
.VulkanSubmitInfo
withWaitSemaphores(java.lang.Iterable<? extends VulkanSemaphoreType> elements)
Copy the current immutable object with elements that replace the content ofwaitSemaphores
.VulkanSubmitInfo
withWaitStageMasks(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofwaitStageMasks
.VulkanSubmitInfo
withWaitStageMasks(java.lang.Iterable<? extends VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofwaitStageMasks
.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.io7m.jcoronado.api.VulkanSubmitInfoType
checkPreconditions
-
-
-
-
Method Detail
-
waitSemaphores
public java.util.List<VulkanSemaphoreType> waitSemaphores()
- Specified by:
waitSemaphores
in interfaceVulkanSubmitInfoType
- Returns:
- A list of semaphores 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.
-
waitStageMasks
public java.util.List<VulkanPipelineStageFlag> waitStageMasks()
- Specified by:
waitStageMasks
in interfaceVulkanSubmitInfoType
- Returns:
- A list of pipeline stages at which each corresponding semaphore wait will occur.
-
commandBuffers
public java.util.List<VulkanCommandBufferType> commandBuffers()
- Specified by:
commandBuffers
in interfaceVulkanSubmitInfoType
- Returns:
- A list of command buffers to execute in the batch.
-
signalSemaphores
public java.util.List<VulkanSemaphoreType> signalSemaphores()
- Specified by:
signalSemaphores
in interfaceVulkanSubmitInfoType
- Returns:
- A list of semaphores 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.
-
withWaitSemaphores
public final VulkanSubmitInfo withWaitSemaphores(VulkanSemaphoreType... elements)
Copy the current immutable object with elements that replace the content ofwaitSemaphores
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withWaitSemaphores
public final VulkanSubmitInfo withWaitSemaphores(java.lang.Iterable<? extends VulkanSemaphoreType> elements)
Copy the current immutable object with elements that replace the content ofwaitSemaphores
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of waitSemaphores elements to set- Returns:
- A modified copy of
this
object
-
withWaitStageMasks
public final VulkanSubmitInfo withWaitStageMasks(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofwaitStageMasks
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withWaitStageMasks
public final VulkanSubmitInfo withWaitStageMasks(java.lang.Iterable<? extends VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofwaitStageMasks
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of waitStageMasks elements to set- Returns:
- A modified copy of
this
object
-
withCommandBuffers
public final VulkanSubmitInfo withCommandBuffers(VulkanCommandBufferType... elements)
Copy the current immutable object with elements that replace the content ofcommandBuffers
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withCommandBuffers
public final VulkanSubmitInfo withCommandBuffers(java.lang.Iterable<? extends VulkanCommandBufferType> elements)
Copy the current immutable object with elements that replace the content ofcommandBuffers
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of commandBuffers elements to set- Returns:
- A modified copy of
this
object
-
withSignalSemaphores
public final VulkanSubmitInfo withSignalSemaphores(VulkanSemaphoreType... elements)
Copy the current immutable object with elements that replace the content ofsignalSemaphores
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withSignalSemaphores
public final VulkanSubmitInfo withSignalSemaphores(java.lang.Iterable<? extends VulkanSemaphoreType> elements)
Copy the current immutable object with elements that replace the content ofsignalSemaphores
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of signalSemaphores elements to set- Returns:
- A modified copy of
this
object
-
equals
public boolean equals(java.lang.Object another)
This instance is equal to all instances ofVulkanSubmitInfo
that have equal attribute values.- Overrides:
equals
in classjava.lang.Object
- Returns:
true
ifthis
is equal toanother
instance
-
hashCode
public int hashCode()
Computes a hash code from attributes:waitSemaphores
,waitStageMasks
,commandBuffers
,signalSemaphores
.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueVulkanSubmitInfo
with attribute values.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of the value
-
of
public static VulkanSubmitInfo of(java.util.List<VulkanSemaphoreType> waitSemaphores, java.util.List<VulkanPipelineStageFlag> waitStageMasks, java.util.List<VulkanCommandBufferType> commandBuffers, java.util.List<VulkanSemaphoreType> signalSemaphores)
Construct a new immutableVulkanSubmitInfo
instance.- Parameters:
waitSemaphores
- The value for thewaitSemaphores
attributewaitStageMasks
- The value for thewaitStageMasks
attributecommandBuffers
- The value for thecommandBuffers
attributesignalSemaphores
- The value for thesignalSemaphores
attribute- Returns:
- An immutable VulkanSubmitInfo instance
-
of
public static VulkanSubmitInfo of(java.lang.Iterable<? extends VulkanSemaphoreType> waitSemaphores, java.lang.Iterable<? extends VulkanPipelineStageFlag> waitStageMasks, java.lang.Iterable<? extends VulkanCommandBufferType> commandBuffers, java.lang.Iterable<? extends VulkanSemaphoreType> signalSemaphores)
Construct a new immutableVulkanSubmitInfo
instance.- Parameters:
waitSemaphores
- The value for thewaitSemaphores
attributewaitStageMasks
- The value for thewaitStageMasks
attributecommandBuffers
- The value for thecommandBuffers
attributesignalSemaphores
- The value for thesignalSemaphores
attribute- Returns:
- An immutable VulkanSubmitInfo instance
-
copyOf
public static VulkanSubmitInfo copyOf(VulkanSubmitInfoType instance)
Creates an immutable copy of aVulkanSubmitInfoType
value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Parameters:
instance
- The instance to copy- Returns:
- A copied immutable VulkanSubmitInfo instance
-
builder
public static VulkanSubmitInfo.Builder builder()
Creates a builder forVulkanSubmitInfo
.- Returns:
- A new VulkanSubmitInfo builder
-
-