Module com.io7m.jcoronado.api
Package com.io7m.jcoronado.api
Class VulkanBufferMemoryBarrier.Builder
- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanBufferMemoryBarrier.Builder
-
- Enclosing class:
- VulkanBufferMemoryBarrier
public static final class VulkanBufferMemoryBarrier.Builder extends java.lang.Object
Builds instances of typeVulkanBufferMemoryBarrier
. Initialize attributes and then invoke thebuild()
method to create an immutable instance.Builder
is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
-
-
-
Method Detail
-
from
public final VulkanBufferMemoryBarrier.Builder from(VulkanBufferMemoryBarrierType instance)
Fill a builder with attribute values from the providedVulkanBufferMemoryBarrierType
instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
addSourceAccessMask
public final VulkanBufferMemoryBarrier.Builder addSourceAccessMask(VulkanAccessFlag element)
Adds one element tosourceAccessMask
set.- Parameters:
element
- A sourceAccessMask element- Returns:
this
builder for use in a chained invocation
-
addSourceAccessMask
public final VulkanBufferMemoryBarrier.Builder addSourceAccessMask(VulkanAccessFlag... elements)
Adds elements tosourceAccessMask
set.- Parameters:
elements
- An array of sourceAccessMask elements- Returns:
this
builder for use in a chained invocation
-
setSourceAccessMask
public final VulkanBufferMemoryBarrier.Builder setSourceAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Sets or replaces all elements forsourceAccessMask
set.- Parameters:
elements
- An iterable of sourceAccessMask elements- Returns:
this
builder for use in a chained invocation
-
addAllSourceAccessMask
public final VulkanBufferMemoryBarrier.Builder addAllSourceAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Adds elements tosourceAccessMask
set.- Parameters:
elements
- An iterable of sourceAccessMask elements- Returns:
this
builder for use in a chained invocation
-
addTargetAccessMask
public final VulkanBufferMemoryBarrier.Builder addTargetAccessMask(VulkanAccessFlag element)
Adds one element totargetAccessMask
set.- Parameters:
element
- A targetAccessMask element- Returns:
this
builder for use in a chained invocation
-
addTargetAccessMask
public final VulkanBufferMemoryBarrier.Builder addTargetAccessMask(VulkanAccessFlag... elements)
Adds elements totargetAccessMask
set.- Parameters:
elements
- An array of targetAccessMask elements- Returns:
this
builder for use in a chained invocation
-
setTargetAccessMask
public final VulkanBufferMemoryBarrier.Builder setTargetAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Sets or replaces all elements fortargetAccessMask
set.- Parameters:
elements
- An iterable of targetAccessMask elements- Returns:
this
builder for use in a chained invocation
-
addAllTargetAccessMask
public final VulkanBufferMemoryBarrier.Builder addAllTargetAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Adds elements totargetAccessMask
set.- Parameters:
elements
- An iterable of targetAccessMask elements- Returns:
this
builder for use in a chained invocation
-
setSourceQueueFamilyIndex
public final VulkanBufferMemoryBarrier.Builder setSourceQueueFamilyIndex(int sourceQueueFamilyIndex)
Initializes the value for thesourceQueueFamilyIndex
attribute.- Parameters:
sourceQueueFamilyIndex
- The value for sourceQueueFamilyIndex- Returns:
this
builder for use in a chained invocation
-
setTargetQueueFamilyIndex
public final VulkanBufferMemoryBarrier.Builder setTargetQueueFamilyIndex(int targetQueueFamilyIndex)
Initializes the value for thetargetQueueFamilyIndex
attribute.- Parameters:
targetQueueFamilyIndex
- The value for targetQueueFamilyIndex- Returns:
this
builder for use in a chained invocation
-
setBuffer
public final VulkanBufferMemoryBarrier.Builder setBuffer(VulkanBufferType buffer)
Initializes the value for thebuffer
attribute.- Parameters:
buffer
- The value for buffer- Returns:
this
builder for use in a chained invocation
-
setOffset
public final VulkanBufferMemoryBarrier.Builder setOffset(long offset)
Initializes the value for theoffset
attribute.- Parameters:
offset
- The value for offset- Returns:
this
builder for use in a chained invocation
-
setSize
public final VulkanBufferMemoryBarrier.Builder setSize(long size)
Initializes the value for thesize
attribute.- Parameters:
size
- The value for size- Returns:
this
builder for use in a chained invocation
-
build
public VulkanBufferMemoryBarrier build()
Builds a newVulkanBufferMemoryBarrier
.- Returns:
- An immutable instance of VulkanBufferMemoryBarrier
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-
-