Class VulkanRenderingInfo
java.lang.Object
com.io7m.jcoronado.api.VulkanRenderingInfo
- All Implemented Interfaces:
VulkanRenderingInfoType
Structure specifying render pass instance begin info.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanRenderingInfo. -
Method Summary
Modifier and TypeMethodDescriptionstatic VulkanRenderingInfo.Builderbuilder()Creates a builder forVulkanRenderingInfo.static VulkanRenderingInfocopyOf(VulkanRenderingInfoType instance) Creates an immutable copy of aVulkanRenderingInfoTypevalue.booleanThis instance is equal to all instances ofVulkanRenderingInfothat have equal attribute values.flags()inthashCode()Computes a hash code from attributes:flags,renderArea,layerCount,viewMask,colorAttachments,depthAttachment,stencilAttachment.longtoString()Prints the immutable valueVulkanRenderingInfowith attribute values.longviewMask()final VulkanRenderingInfowithColorAttachments(VulkanRenderingAttachmentInfo... elements) Copy the current immutable object with elements that replace the content ofcolorAttachments.final VulkanRenderingInfowithColorAttachments(Iterable<? extends VulkanRenderingAttachmentInfo> elements) Copy the current immutable object with elements that replace the content ofcolorAttachments.final VulkanRenderingInfoCopy the current immutable object by setting a present value for the optionaldepthAttachmentattribute.final VulkanRenderingInfowithDepthAttachment(Optional<? extends VulkanRenderingAttachmentInfo> optional) Copy the current immutable object by setting an optional value for thedepthAttachmentattribute.final VulkanRenderingInfowithFlags(VulkanRenderingFlag... elements) Copy the current immutable object with elements that replace the content offlags.final VulkanRenderingInfowithFlags(Iterable<VulkanRenderingFlag> elements) Copy the current immutable object with elements that replace the content offlags.final VulkanRenderingInfowithLayerCount(long value) Copy the current immutable object by setting a value for thelayerCountattribute.final VulkanRenderingInfowithRenderArea(VulkanRectangle2D value) Copy the current immutable object by setting a value for therenderAreaattribute.final VulkanRenderingInfoCopy the current immutable object by setting a present value for the optionalstencilAttachmentattribute.final VulkanRenderingInfowithStencilAttachment(Optional<? extends VulkanRenderingAttachmentInfo> optional) Copy the current immutable object by setting an optional value for thestencilAttachmentattribute.final VulkanRenderingInfowithViewMask(long value) Copy the current immutable object by setting a value for theviewMaskattribute.
-
Method Details
-
flags
- Specified by:
flagsin interfaceVulkanRenderingInfoType- Returns:
- The rendering flags
-
renderArea
- Specified by:
renderAreain interfaceVulkanRenderingInfoType- Returns:
- The rendering area
-
layerCount
public long layerCount()- Specified by:
layerCountin interfaceVulkanRenderingInfoType- Returns:
- The layer count
-
viewMask
public long viewMask()- Specified by:
viewMaskin interfaceVulkanRenderingInfoType- Returns:
- The view mask
-
colorAttachments
- Specified by:
colorAttachmentsin interfaceVulkanRenderingInfoType- Returns:
- The list of color attachments
-
depthAttachment
- Specified by:
depthAttachmentin interfaceVulkanRenderingInfoType- Returns:
- The depth attachment
-
stencilAttachment
- Specified by:
stencilAttachmentin interfaceVulkanRenderingInfoType- Returns:
- The stencil attachment
-
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
-
withRenderArea
Copy the current immutable object by setting a value for therenderAreaattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for renderArea- Returns:
- A modified copy or the
thisobject
-
withLayerCount
Copy the current immutable object by setting a value for thelayerCountattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for layerCount- Returns:
- A modified copy or the
thisobject
-
withViewMask
Copy the current immutable object by setting a value for theviewMaskattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for viewMask- Returns:
- A modified copy or the
thisobject
-
withColorAttachments
Copy the current immutable object with elements that replace the content ofcolorAttachments.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withColorAttachments
public final VulkanRenderingInfo withColorAttachments(Iterable<? extends VulkanRenderingAttachmentInfo> elements) Copy the current immutable object with elements that replace the content ofcolorAttachments. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of colorAttachments elements to set- Returns:
- A modified copy or
thisif not changed
-
withDepthAttachment
Copy the current immutable object by setting a present value for the optionaldepthAttachmentattribute.- Parameters:
value- The value for depthAttachment- Returns:
- A modified copy or
thisif not changed
-
withDepthAttachment
public final VulkanRenderingInfo withDepthAttachment(Optional<? extends VulkanRenderingAttachmentInfo> optional) Copy the current immutable object by setting an optional value for thedepthAttachmentattribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returningthis.- Parameters:
optional- An optional value for depthAttachment- Returns:
- A modified copy or
thisif not changed
-
withStencilAttachment
Copy the current immutable object by setting a present value for the optionalstencilAttachmentattribute.- Parameters:
value- The value for stencilAttachment- Returns:
- A modified copy or
thisif not changed
-
withStencilAttachment
public final VulkanRenderingInfo withStencilAttachment(Optional<? extends VulkanRenderingAttachmentInfo> optional) Copy the current immutable object by setting an optional value for thestencilAttachmentattribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returningthis.- Parameters:
optional- An optional value for stencilAttachment- Returns:
- A modified copy or
thisif not changed
-
equals
-
hashCode
-
toString
-
copyOf
Creates an immutable copy of aVulkanRenderingInfoTypevalue. 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 VulkanRenderingInfo instance
-
builder
Creates a builder forVulkanRenderingInfo.VulkanRenderingInfo.builder() .addFlags|addAllFlags(com.io7m.jcoronado.api.VulkanRenderingFlag) //
flagselements .setRenderArea(com.io7m.jcoronado.api.VulkanRectangle2D) // requiredrenderArea.setLayerCount(long) // requiredlayerCount.setViewMask(long) // optionalviewMask.addColorAttachments|addAllColorAttachments(VulkanRenderingAttachmentInfo) //colorAttachmentselements .setDepthAttachment(Optional<VulkanRenderingAttachmentInfo>) // optionaldepthAttachment.setStencilAttachment(Optional<VulkanRenderingAttachmentInfo>) // optionalstencilAttachment.build();- Returns:
- A new VulkanRenderingInfo builder
-