- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanMemoryBarrier
-
- All Implemented Interfaces:
VulkanMemoryBarrierType
public final class VulkanMemoryBarrier extends java.lang.Object implements VulkanMemoryBarrierType
Structure specifying the parameters of a global memory barrier.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VulkanMemoryBarrier.Builder
Builds instances of typeVulkanMemoryBarrier
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VulkanMemoryBarrier.Builder
builder()
Creates a builder forVulkanMemoryBarrier
.static VulkanMemoryBarrier
copyOf(VulkanMemoryBarrierType instance)
Creates an immutable copy of aVulkanMemoryBarrierType
value.boolean
equals(java.lang.Object another)
This instance is equal to all instances ofVulkanMemoryBarrier
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:sourceAccessMask
,targetAccessMask
.static VulkanMemoryBarrier
of(java.lang.Iterable<VulkanAccessFlag> sourceAccessMask, java.lang.Iterable<VulkanAccessFlag> targetAccessMask)
Construct a new immutableVulkanMemoryBarrier
instance.static VulkanMemoryBarrier
of(java.util.Set<VulkanAccessFlag> sourceAccessMask, java.util.Set<VulkanAccessFlag> targetAccessMask)
Construct a new immutableVulkanMemoryBarrier
instance.java.util.Set<VulkanAccessFlag>
sourceAccessMask()
java.util.Set<VulkanAccessFlag>
targetAccessMask()
java.lang.String
toString()
Prints the immutable valueVulkanMemoryBarrier
with attribute values.VulkanMemoryBarrier
withSourceAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofsourceAccessMask
.VulkanMemoryBarrier
withSourceAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofsourceAccessMask
.VulkanMemoryBarrier
withTargetAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content oftargetAccessMask
.VulkanMemoryBarrier
withTargetAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content oftargetAccessMask
.
-
-
-
Method Detail
-
sourceAccessMask
public java.util.Set<VulkanAccessFlag> sourceAccessMask()
- Specified by:
sourceAccessMask
in interfaceVulkanMemoryBarrierType
- Returns:
- The source access mask
-
targetAccessMask
public java.util.Set<VulkanAccessFlag> targetAccessMask()
- Specified by:
targetAccessMask
in interfaceVulkanMemoryBarrierType
- Returns:
- The target access mask
-
withSourceAccessMask
public final VulkanMemoryBarrier withSourceAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofsourceAccessMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withSourceAccessMask
public final VulkanMemoryBarrier withSourceAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofsourceAccessMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of sourceAccessMask elements to set- Returns:
- A modified copy of
this
object
-
withTargetAccessMask
public final VulkanMemoryBarrier withTargetAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content oftargetAccessMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withTargetAccessMask
public final VulkanMemoryBarrier withTargetAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content oftargetAccessMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of targetAccessMask 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 ofVulkanMemoryBarrier
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:sourceAccessMask
,targetAccessMask
.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueVulkanMemoryBarrier
with attribute values.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of the value
-
of
public static VulkanMemoryBarrier of(java.util.Set<VulkanAccessFlag> sourceAccessMask, java.util.Set<VulkanAccessFlag> targetAccessMask)
Construct a new immutableVulkanMemoryBarrier
instance.- Parameters:
sourceAccessMask
- The value for thesourceAccessMask
attributetargetAccessMask
- The value for thetargetAccessMask
attribute- Returns:
- An immutable VulkanMemoryBarrier instance
-
of
public static VulkanMemoryBarrier of(java.lang.Iterable<VulkanAccessFlag> sourceAccessMask, java.lang.Iterable<VulkanAccessFlag> targetAccessMask)
Construct a new immutableVulkanMemoryBarrier
instance.- Parameters:
sourceAccessMask
- The value for thesourceAccessMask
attributetargetAccessMask
- The value for thetargetAccessMask
attribute- Returns:
- An immutable VulkanMemoryBarrier instance
-
copyOf
public static VulkanMemoryBarrier copyOf(VulkanMemoryBarrierType instance)
Creates an immutable copy of aVulkanMemoryBarrierType
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 VulkanMemoryBarrier instance
-
builder
public static VulkanMemoryBarrier.Builder builder()
Creates a builder forVulkanMemoryBarrier
.- Returns:
- A new VulkanMemoryBarrier builder
-
-