Class VulkanSubpassDependency
java.lang.Object
com.io7m.jcoronado.api.VulkanSubpassDependency
- All Implemented Interfaces:
VulkanSubpassDependencyType
Structure specifying a subpass dependency.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanSubpassDependency. -
Field Summary
Fields inherited from interface com.io7m.jcoronado.api.VulkanSubpassDependencyType
EXTERNAL -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a builder forVulkanSubpassDependency.static VulkanSubpassDependencycopyOf(VulkanSubpassDependencyType instance) Creates an immutable copy of aVulkanSubpassDependencyTypevalue.intbooleanThis instance is equal to all instances ofVulkanSubpassDependencythat have equal attribute values.inthashCode()Computes a hash code from attributes:srcSubpass,dstSubpass,srcStageMask,dstStageMask,srcAccessMask,dstAccessMask,dependencyFlags.static VulkanSubpassDependencyof(int srcSubpass, int dstSubpass, Iterable<VulkanPipelineStageFlag> srcStageMask, Iterable<VulkanPipelineStageFlag> dstStageMask, Iterable<VulkanAccessFlag> srcAccessMask, Iterable<VulkanAccessFlag> dstAccessMask, Iterable<VulkanDependencyFlag> dependencyFlags) Construct a new immutableVulkanSubpassDependencyinstance.static VulkanSubpassDependencyof(int srcSubpass, int dstSubpass, Set<VulkanPipelineStageFlag> srcStageMask, Set<VulkanPipelineStageFlag> dstStageMask, Set<VulkanAccessFlag> srcAccessMask, Set<VulkanAccessFlag> dstAccessMask, Set<VulkanDependencyFlag> dependencyFlags) Construct a new immutableVulkanSubpassDependencyinstance.inttoString()Prints the immutable valueVulkanSubpassDependencywith attribute values.final VulkanSubpassDependencywithDependencyFlags(VulkanDependencyFlag... elements) Copy the current immutable object with elements that replace the content ofdependencyFlags.final VulkanSubpassDependencywithDependencyFlags(Iterable<VulkanDependencyFlag> elements) Copy the current immutable object with elements that replace the content ofdependencyFlags.final VulkanSubpassDependencywithDstAccessMask(VulkanAccessFlag... elements) Copy the current immutable object with elements that replace the content ofdstAccessMask.final VulkanSubpassDependencywithDstAccessMask(Iterable<VulkanAccessFlag> elements) Copy the current immutable object with elements that replace the content ofdstAccessMask.final VulkanSubpassDependencywithDstStageMask(VulkanPipelineStageFlag... elements) Copy the current immutable object with elements that replace the content ofdstStageMask.final VulkanSubpassDependencywithDstStageMask(Iterable<VulkanPipelineStageFlag> elements) Copy the current immutable object with elements that replace the content ofdstStageMask.final VulkanSubpassDependencywithDstSubpass(int value) Copy the current immutable object by setting a value for thedstSubpassattribute.final VulkanSubpassDependencywithSrcAccessMask(VulkanAccessFlag... elements) Copy the current immutable object with elements that replace the content ofsrcAccessMask.final VulkanSubpassDependencywithSrcAccessMask(Iterable<VulkanAccessFlag> elements) Copy the current immutable object with elements that replace the content ofsrcAccessMask.final VulkanSubpassDependencywithSrcStageMask(VulkanPipelineStageFlag... elements) Copy the current immutable object with elements that replace the content ofsrcStageMask.final VulkanSubpassDependencywithSrcStageMask(Iterable<VulkanPipelineStageFlag> elements) Copy the current immutable object with elements that replace the content ofsrcStageMask.final VulkanSubpassDependencywithSrcSubpass(int value) Copy the current immutable object by setting a value for thesrcSubpassattribute.
-
Method Details
-
srcSubpass
public int srcSubpass()- Specified by:
srcSubpassin interfaceVulkanSubpassDependencyType- Returns:
- The subpass index of the first subpass in the dependency, or VK_SUBPASS_EXTERNAL.
-
dstSubpass
public int dstSubpass()- Specified by:
dstSubpassin interfaceVulkanSubpassDependencyType- Returns:
- The subpass index of the second subpass in the dependency, or VK_SUBPASS_EXTERNAL.
-
srcStageMask
- Specified by:
srcStageMaskin interfaceVulkanSubpassDependencyType- Returns:
- The source stage mask
-
dstStageMask
- Specified by:
dstStageMaskin interfaceVulkanSubpassDependencyType- Returns:
- The destination stage mask
-
srcAccessMask
- Specified by:
srcAccessMaskin interfaceVulkanSubpassDependencyType- Returns:
- The source access mask
-
dstAccessMask
- Specified by:
dstAccessMaskin interfaceVulkanSubpassDependencyType- Returns:
- The destination access mask
-
dependencyFlags
- Specified by:
dependencyFlagsin interfaceVulkanSubpassDependencyType- Returns:
- The dependency flags for the subpass
-
withSrcSubpass
Copy the current immutable object by setting a value for thesrcSubpassattribute. 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
thisobject
-
withDstSubpass
Copy the current immutable object by setting a value for thedstSubpassattribute. 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
thisobject
-
withSrcStageMask
Copy the current immutable object with elements that replace the content ofsrcStageMask.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withSrcStageMask
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
thisobject
-
withDstStageMask
Copy the current immutable object with elements that replace the content ofdstStageMask.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withDstStageMask
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
thisobject
-
withSrcAccessMask
Copy the current immutable object with elements that replace the content ofsrcAccessMask.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withSrcAccessMask
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
thisobject
-
withDstAccessMask
Copy the current immutable object with elements that replace the content ofdstAccessMask.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withDstAccessMask
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
thisobject
-
withDependencyFlags
Copy the current immutable object with elements that replace the content ofdependencyFlags.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withDependencyFlags
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
thisobject
-
equals
-
hashCode
-
toString
-
of
public static VulkanSubpassDependency of(int srcSubpass, int dstSubpass, Set<VulkanPipelineStageFlag> srcStageMask, Set<VulkanPipelineStageFlag> dstStageMask, Set<VulkanAccessFlag> srcAccessMask, Set<VulkanAccessFlag> dstAccessMask, Set<VulkanDependencyFlag> dependencyFlags) Construct a new immutableVulkanSubpassDependencyinstance.- Parameters:
srcSubpass- The value for thesrcSubpassattributedstSubpass- The value for thedstSubpassattributesrcStageMask- The value for thesrcStageMaskattributedstStageMask- The value for thedstStageMaskattributesrcAccessMask- The value for thesrcAccessMaskattributedstAccessMask- The value for thedstAccessMaskattributedependencyFlags- The value for thedependencyFlagsattribute- Returns:
- An immutable VulkanSubpassDependency instance
-
of
public static VulkanSubpassDependency of(int srcSubpass, int dstSubpass, Iterable<VulkanPipelineStageFlag> srcStageMask, Iterable<VulkanPipelineStageFlag> dstStageMask, Iterable<VulkanAccessFlag> srcAccessMask, Iterable<VulkanAccessFlag> dstAccessMask, Iterable<VulkanDependencyFlag> dependencyFlags) Construct a new immutableVulkanSubpassDependencyinstance.- Parameters:
srcSubpass- The value for thesrcSubpassattributedstSubpass- The value for thedstSubpassattributesrcStageMask- The value for thesrcStageMaskattributedstStageMask- The value for thedstStageMaskattributesrcAccessMask- The value for thesrcAccessMaskattributedstAccessMask- The value for thedstAccessMaskattributedependencyFlags- The value for thedependencyFlagsattribute- Returns:
- An immutable VulkanSubpassDependency instance
-
copyOf
Creates an immutable copy of aVulkanSubpassDependencyTypevalue. 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
Creates a builder forVulkanSubpassDependency.VulkanSubpassDependency.builder() .setSrcSubpass(int) // requiredsrcSubpass.setDstSubpass(int) // requireddstSubpass.addSrcStageMask|addAllSrcStageMask(com.io7m.jcoronado.api.VulkanPipelineStageFlag) //srcStageMaskelements .addDstStageMask|addAllDstStageMask(com.io7m.jcoronado.api.VulkanPipelineStageFlag) //dstStageMaskelements .addSrcAccessMask|addAllSrcAccessMask(com.io7m.jcoronado.api.VulkanAccessFlag) //srcAccessMaskelements .addDstAccessMask|addAllDstAccessMask(com.io7m.jcoronado.api.VulkanAccessFlag) //dstAccessMaskelements .addDependencyFlags|addAllDependencyFlags(com.io7m.jcoronado.api.VulkanDependencyFlag) //dependencyFlagselements .build();- Returns:
- A new VulkanSubpassDependency builder
-