Class VulkanDependencyInfo
java.lang.Object
com.io7m.jcoronado.api.VulkanDependencyInfo
- All Implemented Interfaces:
VulkanDependencyInfoType
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanDependencyInfo. -
Method Summary
Modifier and TypeMethodDescriptionstatic VulkanDependencyInfo.Builderbuilder()Creates a builder forVulkanDependencyInfo.static VulkanDependencyInfocopyOf(VulkanDependencyInfoType instance) Creates an immutable copy of aVulkanDependencyInfoTypevalue.booleanThis instance is equal to all instances ofVulkanDependencyInfothat have equal attribute values.flags()inthashCode()Computes a hash code from attributes:flags,memoryBarriers,bufferMemoryBarriers,imageMemoryBarriers.toString()Prints the immutable valueVulkanDependencyInfowith attribute values.final VulkanDependencyInfowithBufferMemoryBarriers(VulkanBufferMemoryBarrier... elements) Copy the current immutable object with elements that replace the content ofbufferMemoryBarriers.final VulkanDependencyInfowithBufferMemoryBarriers(Iterable<? extends VulkanBufferMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofbufferMemoryBarriers.final VulkanDependencyInfowithFlags(VulkanDependencyFlag... elements) Copy the current immutable object with elements that replace the content offlags.final VulkanDependencyInfowithFlags(Iterable<VulkanDependencyFlag> elements) Copy the current immutable object with elements that replace the content offlags.final VulkanDependencyInfowithImageMemoryBarriers(VulkanImageMemoryBarrier... elements) Copy the current immutable object with elements that replace the content ofimageMemoryBarriers.final VulkanDependencyInfowithImageMemoryBarriers(Iterable<? extends VulkanImageMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofimageMemoryBarriers.final VulkanDependencyInfowithMemoryBarriers(VulkanMemoryBarrier... elements) Copy the current immutable object with elements that replace the content ofmemoryBarriers.final VulkanDependencyInfowithMemoryBarriers(Iterable<? extends VulkanMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofmemoryBarriers.
-
Method Details
-
flags
- Specified by:
flagsin interfaceVulkanDependencyInfoType- Returns:
- A set of flags specifying how execution and memory dependencies are formed.
-
memoryBarriers
- Specified by:
memoryBarriersin interfaceVulkanDependencyInfoType- Returns:
- The memory barriers for any memory accesses
-
bufferMemoryBarriers
- Specified by:
bufferMemoryBarriersin interfaceVulkanDependencyInfoType- Returns:
- The memory dependencies between buffer ranges
-
imageMemoryBarriers
- Specified by:
imageMemoryBarriersin interfaceVulkanDependencyInfoType- Returns:
- The memory dependencies between image subresources
-
withFlags
Copy the current immutable object with elements that replace the content offlags.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withFlags
Copy the current immutable object with elements that replace the content offlags. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of flags elements to set- Returns:
- A modified copy or
thisif not changed
-
withMemoryBarriers
Copy the current immutable object with elements that replace the content ofmemoryBarriers.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withMemoryBarriers
public final VulkanDependencyInfo withMemoryBarriers(Iterable<? extends VulkanMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofmemoryBarriers. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of memoryBarriers elements to set- Returns:
- A modified copy or
thisif not changed
-
withBufferMemoryBarriers
Copy the current immutable object with elements that replace the content ofbufferMemoryBarriers.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withBufferMemoryBarriers
public final VulkanDependencyInfo withBufferMemoryBarriers(Iterable<? extends VulkanBufferMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofbufferMemoryBarriers. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of bufferMemoryBarriers elements to set- Returns:
- A modified copy or
thisif not changed
-
withImageMemoryBarriers
Copy the current immutable object with elements that replace the content ofimageMemoryBarriers.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withImageMemoryBarriers
public final VulkanDependencyInfo withImageMemoryBarriers(Iterable<? extends VulkanImageMemoryBarrier> elements) Copy the current immutable object with elements that replace the content ofimageMemoryBarriers. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of imageMemoryBarriers elements to set- Returns:
- A modified copy or
thisif not changed
-
equals
-
hashCode
-
toString
-
copyOf
Creates an immutable copy of aVulkanDependencyInfoTypevalue. 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 VulkanDependencyInfo instance
-
builder
Creates a builder forVulkanDependencyInfo.VulkanDependencyInfo.builder() .addFlags|addAllFlags(com.io7m.jcoronado.api.VulkanDependencyFlag) //
flagselements .addMemoryBarriers|addAllMemoryBarriers(VulkanMemoryBarrier) //memoryBarrierselements .addBufferMemoryBarriers|addAllBufferMemoryBarriers(VulkanBufferMemoryBarrier) //bufferMemoryBarrierselements .addImageMemoryBarriers|addAllImageMemoryBarriers(VulkanImageMemoryBarrier) //imageMemoryBarrierselements .build();- Returns:
- A new VulkanDependencyInfo builder
-