Class VulkanPipelineColorBlendStateCreateInfo
java.lang.Object
com.io7m.jcoronado.api.VulkanPipelineColorBlendStateCreateInfo
- All Implemented Interfaces:
VulkanPipelineColorBlendStateCreateInfoType
public final class VulkanPipelineColorBlendStateCreateInfo
extends Object
implements VulkanPipelineColorBlendStateCreateInfoType
Structure specifying parameters of a newly created pipeline color blend state.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanPipelineColorBlendStateCreateInfo. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a builder forVulkanPipelineColorBlendStateCreateInfo.Creates an immutable copy of aVulkanPipelineColorBlendStateCreateInfoTypevalue.booleanThis instance is equal to all instances ofVulkanPipelineColorBlendStateCreateInfothat have equal attribute values.flags()inthashCode()Computes a hash code from attributes:logicOp,flags,attachments,blendConstants.logicOp()toString()Prints the immutable valueVulkanPipelineColorBlendStateCreateInfowith attribute values.withAttachments(VulkanPipelineColorBlendAttachmentState... elements) Copy the current immutable object with elements that replace the content ofattachments.withAttachments(Iterable<? extends VulkanPipelineColorBlendAttachmentState> elements) Copy the current immutable object with elements that replace the content ofattachments.Copy the current immutable object by setting a value for theblendConstantsattribute.withFlags(VulkanPipelineColorBlendStateCreateFlag... elements) Copy the current immutable object with elements that replace the content offlags.Copy the current immutable object with elements that replace the content offlags.withLogicOp(VulkanLogicOp value) Copy the current immutable object by setting a present value for the optionallogicOpattribute.withLogicOp(Optional<? extends VulkanLogicOp> optional) Copy the current immutable object by setting an optional value for thelogicOpattribute.
-
Method Details
-
logicOp
- Specified by:
logicOpin interfaceVulkanPipelineColorBlendStateCreateInfoType- Returns:
- The logical operation to apply (if any)
-
flags
- Specified by:
flagsin interfaceVulkanPipelineColorBlendStateCreateInfoType- Returns:
- The creation flags
-
attachments
- Specified by:
attachmentsin interfaceVulkanPipelineColorBlendStateCreateInfoType- Returns:
- The per-target attachment states.
-
blendConstants
- Specified by:
blendConstantsin interfaceVulkanPipelineColorBlendStateCreateInfoType- Returns:
- The constants used for blending
-
withLogicOp
Copy the current immutable object by setting a present value for the optionallogicOpattribute.- Parameters:
value- The value for logicOp- Returns:
- A modified copy or
thisif not changed
-
withLogicOp
public final VulkanPipelineColorBlendStateCreateInfo withLogicOp(Optional<? extends VulkanLogicOp> optional) Copy the current immutable object by setting an optional value for thelogicOpattribute. An equality check is used on inner value to prevent copying of the same value by returningthis.- Parameters:
optional- An optional value for logicOp- Returns:
- A modified copy or
thisif not changed
-
withFlags
public final VulkanPipelineColorBlendStateCreateInfo withFlags(VulkanPipelineColorBlendStateCreateFlag... elements) 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
public final VulkanPipelineColorBlendStateCreateInfo withFlags(Iterable<VulkanPipelineColorBlendStateCreateFlag> elements) 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
-
withAttachments
public final VulkanPipelineColorBlendStateCreateInfo withAttachments(VulkanPipelineColorBlendAttachmentState... elements) Copy the current immutable object with elements that replace the content ofattachments.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withAttachments
public final VulkanPipelineColorBlendStateCreateInfo withAttachments(Iterable<? extends VulkanPipelineColorBlendAttachmentState> elements) Copy the current immutable object with elements that replace the content ofattachments. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of attachments elements to set- Returns:
- A modified copy or
thisif not changed
-
withBlendConstants
Copy the current immutable object by setting a value for theblendConstantsattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for blendConstants- Returns:
- A modified copy or the
thisobject
-
equals
-
hashCode
-
toString
-
copyOf
public static VulkanPipelineColorBlendStateCreateInfo copyOf(VulkanPipelineColorBlendStateCreateInfoType instance) Creates an immutable copy of aVulkanPipelineColorBlendStateCreateInfoTypevalue. 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 VulkanPipelineColorBlendStateCreateInfo instance
-
builder
Creates a builder forVulkanPipelineColorBlendStateCreateInfo.VulkanPipelineColorBlendStateCreateInfo.builder() .setLogicOp(Optional<com.io7m.jcoronado.api.VulkanLogicOp>) // optional
logicOp.addFlags|addAllFlags(com.io7m.jcoronado.api.VulkanPipelineColorBlendStateCreateFlag) //flagselements .addAttachments|addAllAttachments(VulkanPipelineColorBlendAttachmentState) //attachmentselements .setBlendConstants(com.io7m.jcoronado.api.VulkanBlendConstants) // optionalblendConstants.build();- Returns:
- A new VulkanPipelineColorBlendStateCreateInfo builder
-