- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanSubpassDependency
-
- All Implemented Interfaces:
VulkanSubpassDependencyType
public final class VulkanSubpassDependency extends java.lang.Object implements VulkanSubpassDependencyType
Structure specifying a subpass dependency.- See Also:
- "VkSubpassDependency"
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VulkanSubpassDependency.Builder
Builds instances of typeVulkanSubpassDependency
.
-
Field Summary
-
Fields inherited from interface com.io7m.jcoronado.api.VulkanSubpassDependencyType
EXTERNAL
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VulkanSubpassDependency.Builder
builder()
Creates a builder forVulkanSubpassDependency
.static VulkanSubpassDependency
copyOf(VulkanSubpassDependencyType instance)
Creates an immutable copy of aVulkanSubpassDependencyType
value.java.util.Set<VulkanDependencyFlag>
dependencyFlags()
java.util.Set<VulkanAccessFlag>
dstAccessMask()
java.util.Set<VulkanPipelineStageFlag>
dstStageMask()
int
dstSubpass()
boolean
equals(java.lang.Object another)
This instance is equal to all instances ofVulkanSubpassDependency
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:srcSubpass
,dstSubpass
,srcStageMask
,dstStageMask
,srcAccessMask
,dstAccessMask
,dependencyFlags
.static VulkanSubpassDependency
of(int srcSubpass, int dstSubpass, java.lang.Iterable<VulkanPipelineStageFlag> srcStageMask, java.lang.Iterable<VulkanPipelineStageFlag> dstStageMask, java.lang.Iterable<VulkanAccessFlag> srcAccessMask, java.lang.Iterable<VulkanAccessFlag> dstAccessMask, java.lang.Iterable<VulkanDependencyFlag> dependencyFlags)
Construct a new immutableVulkanSubpassDependency
instance.static VulkanSubpassDependency
of(int srcSubpass, int dstSubpass, java.util.Set<VulkanPipelineStageFlag> srcStageMask, java.util.Set<VulkanPipelineStageFlag> dstStageMask, java.util.Set<VulkanAccessFlag> srcAccessMask, java.util.Set<VulkanAccessFlag> dstAccessMask, java.util.Set<VulkanDependencyFlag> dependencyFlags)
Construct a new immutableVulkanSubpassDependency
instance.java.util.Set<VulkanAccessFlag>
srcAccessMask()
java.util.Set<VulkanPipelineStageFlag>
srcStageMask()
int
srcSubpass()
java.lang.String
toString()
Prints the immutable valueVulkanSubpassDependency
with attribute values.VulkanSubpassDependency
withDependencyFlags(VulkanDependencyFlag... elements)
Copy the current immutable object with elements that replace the content ofdependencyFlags
.VulkanSubpassDependency
withDependencyFlags(java.lang.Iterable<VulkanDependencyFlag> elements)
Copy the current immutable object with elements that replace the content ofdependencyFlags
.VulkanSubpassDependency
withDstAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofdstAccessMask
.VulkanSubpassDependency
withDstAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofdstAccessMask
.VulkanSubpassDependency
withDstStageMask(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofdstStageMask
.VulkanSubpassDependency
withDstStageMask(java.lang.Iterable<VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofdstStageMask
.VulkanSubpassDependency
withDstSubpass(int value)
Copy the current immutable object by setting a value for thedstSubpass
attribute.VulkanSubpassDependency
withSrcAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofsrcAccessMask
.VulkanSubpassDependency
withSrcAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofsrcAccessMask
.VulkanSubpassDependency
withSrcStageMask(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofsrcStageMask
.VulkanSubpassDependency
withSrcStageMask(java.lang.Iterable<VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofsrcStageMask
.VulkanSubpassDependency
withSrcSubpass(int value)
Copy the current immutable object by setting a value for thesrcSubpass
attribute.
-
-
-
Method Detail
-
srcSubpass
public int srcSubpass()
- Specified by:
srcSubpass
in interfaceVulkanSubpassDependencyType
- Returns:
- The subpass index of the first subpass in the dependency, or VK_SUBPASS_EXTERNAL.
-
dstSubpass
public int dstSubpass()
- Specified by:
dstSubpass
in interfaceVulkanSubpassDependencyType
- Returns:
- The subpass index of the second subpass in the dependency, or VK_SUBPASS_EXTERNAL.
-
srcStageMask
public java.util.Set<VulkanPipelineStageFlag> srcStageMask()
- Specified by:
srcStageMask
in interfaceVulkanSubpassDependencyType
- Returns:
- The source stage mask
-
dstStageMask
public java.util.Set<VulkanPipelineStageFlag> dstStageMask()
- Specified by:
dstStageMask
in interfaceVulkanSubpassDependencyType
- Returns:
- The destination stage mask
-
srcAccessMask
public java.util.Set<VulkanAccessFlag> srcAccessMask()
- Specified by:
srcAccessMask
in interfaceVulkanSubpassDependencyType
- Returns:
- The source access mask
-
dstAccessMask
public java.util.Set<VulkanAccessFlag> dstAccessMask()
- Specified by:
dstAccessMask
in interfaceVulkanSubpassDependencyType
- Returns:
- The destination access mask
-
dependencyFlags
public java.util.Set<VulkanDependencyFlag> dependencyFlags()
- Specified by:
dependencyFlags
in interfaceVulkanSubpassDependencyType
- Returns:
- The dependency flags for the subpass
-
withSrcSubpass
public final VulkanSubpassDependency withSrcSubpass(int value)
Copy the current immutable object by setting a value for thesrcSubpass
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for srcSubpass- Returns:
- A modified copy of the
this
object
-
withDstSubpass
public final VulkanSubpassDependency withDstSubpass(int value)
Copy the current immutable object by setting a value for thedstSubpass
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for dstSubpass- Returns:
- A modified copy of the
this
object
-
withSrcStageMask
public final VulkanSubpassDependency withSrcStageMask(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofsrcStageMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withSrcStageMask
public final VulkanSubpassDependency withSrcStageMask(java.lang.Iterable<VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofsrcStageMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of srcStageMask elements to set- Returns:
- A modified copy of
this
object
-
withDstStageMask
public final VulkanSubpassDependency withDstStageMask(VulkanPipelineStageFlag... elements)
Copy the current immutable object with elements that replace the content ofdstStageMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withDstStageMask
public final VulkanSubpassDependency withDstStageMask(java.lang.Iterable<VulkanPipelineStageFlag> elements)
Copy the current immutable object with elements that replace the content ofdstStageMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of dstStageMask elements to set- Returns:
- A modified copy of
this
object
-
withSrcAccessMask
public final VulkanSubpassDependency withSrcAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofsrcAccessMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withSrcAccessMask
public final VulkanSubpassDependency withSrcAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofsrcAccessMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of srcAccessMask elements to set- Returns:
- A modified copy of
this
object
-
withDstAccessMask
public final VulkanSubpassDependency withDstAccessMask(VulkanAccessFlag... elements)
Copy the current immutable object with elements that replace the content ofdstAccessMask
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withDstAccessMask
public final VulkanSubpassDependency withDstAccessMask(java.lang.Iterable<VulkanAccessFlag> elements)
Copy the current immutable object with elements that replace the content ofdstAccessMask
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of dstAccessMask elements to set- Returns:
- A modified copy of
this
object
-
withDependencyFlags
public final VulkanSubpassDependency withDependencyFlags(VulkanDependencyFlag... elements)
Copy the current immutable object with elements that replace the content ofdependencyFlags
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withDependencyFlags
public final VulkanSubpassDependency withDependencyFlags(java.lang.Iterable<VulkanDependencyFlag> elements)
Copy the current immutable object with elements that replace the content ofdependencyFlags
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of dependencyFlags 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 ofVulkanSubpassDependency
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:srcSubpass
,dstSubpass
,srcStageMask
,dstStageMask
,srcAccessMask
,dstAccessMask
,dependencyFlags
.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueVulkanSubpassDependency
with attribute values.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of the value
-
of
public static VulkanSubpassDependency of(int srcSubpass, int dstSubpass, java.util.Set<VulkanPipelineStageFlag> srcStageMask, java.util.Set<VulkanPipelineStageFlag> dstStageMask, java.util.Set<VulkanAccessFlag> srcAccessMask, java.util.Set<VulkanAccessFlag> dstAccessMask, java.util.Set<VulkanDependencyFlag> dependencyFlags)
Construct a new immutableVulkanSubpassDependency
instance.- Parameters:
srcSubpass
- The value for thesrcSubpass
attributedstSubpass
- The value for thedstSubpass
attributesrcStageMask
- The value for thesrcStageMask
attributedstStageMask
- The value for thedstStageMask
attributesrcAccessMask
- The value for thesrcAccessMask
attributedstAccessMask
- The value for thedstAccessMask
attributedependencyFlags
- The value for thedependencyFlags
attribute- Returns:
- An immutable VulkanSubpassDependency instance
-
of
public static VulkanSubpassDependency of(int srcSubpass, int dstSubpass, java.lang.Iterable<VulkanPipelineStageFlag> srcStageMask, java.lang.Iterable<VulkanPipelineStageFlag> dstStageMask, java.lang.Iterable<VulkanAccessFlag> srcAccessMask, java.lang.Iterable<VulkanAccessFlag> dstAccessMask, java.lang.Iterable<VulkanDependencyFlag> dependencyFlags)
Construct a new immutableVulkanSubpassDependency
instance.- Parameters:
srcSubpass
- The value for thesrcSubpass
attributedstSubpass
- The value for thedstSubpass
attributesrcStageMask
- The value for thesrcStageMask
attributedstStageMask
- The value for thedstStageMask
attributesrcAccessMask
- The value for thesrcAccessMask
attributedstAccessMask
- The value for thedstAccessMask
attributedependencyFlags
- The value for thedependencyFlags
attribute- Returns:
- An immutable VulkanSubpassDependency instance
-
copyOf
public static VulkanSubpassDependency copyOf(VulkanSubpassDependencyType instance)
Creates an immutable copy of aVulkanSubpassDependencyType
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 VulkanSubpassDependency instance
-
builder
public static VulkanSubpassDependency.Builder builder()
Creates a builder forVulkanSubpassDependency
.- Returns:
- A new VulkanSubpassDependency builder
-
-