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()of(Optional<? extends VulkanLogicOp> logicOp, Iterable<VulkanPipelineColorBlendStateCreateFlag> flags, Iterable<? extends VulkanPipelineColorBlendAttachmentState> attachments, VulkanBlendConstants blendConstants) Construct a new immutableVulkanPipelineColorBlendStateCreateInfoinstance.of(Optional<VulkanLogicOp> logicOp, Set<VulkanPipelineColorBlendStateCreateFlag> flags, List<VulkanPipelineColorBlendAttachmentState> attachments, VulkanBlendConstants blendConstants) Construct a new immutableVulkanPipelineColorBlendStateCreateInfoinstance.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 of
thisobject
-
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 nullable value to prevent copying of the same value by returningthis.- Parameters:
optional- A value for logicOp- Returns:
- A modified copy of
thisobject
-
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 of
thisobject
-
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 of
thisobject
-
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 of the
thisobject
-
equals
-
hashCode
-
toString
-
of
public static VulkanPipelineColorBlendStateCreateInfo of(Optional<VulkanLogicOp> logicOp, Set<VulkanPipelineColorBlendStateCreateFlag> flags, List<VulkanPipelineColorBlendAttachmentState> attachments, VulkanBlendConstants blendConstants) Construct a new immutableVulkanPipelineColorBlendStateCreateInfoinstance.- Parameters:
logicOp- The value for thelogicOpattributeflags- The value for theflagsattributeattachments- The value for theattachmentsattributeblendConstants- The value for theblendConstantsattribute- Returns:
- An immutable VulkanPipelineColorBlendStateCreateInfo instance
-
of
public static VulkanPipelineColorBlendStateCreateInfo of(Optional<? extends VulkanLogicOp> logicOp, Iterable<VulkanPipelineColorBlendStateCreateFlag> flags, Iterable<? extends VulkanPipelineColorBlendAttachmentState> attachments, VulkanBlendConstants blendConstants) Construct a new immutableVulkanPipelineColorBlendStateCreateInfoinstance.- Parameters:
logicOp- The value for thelogicOpattributeflags- The value for theflagsattributeattachments- The value for theattachmentsattributeblendConstants- The value for theblendConstantsattribute- Returns:
- An immutable VulkanPipelineColorBlendStateCreateInfo instance
-
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(com.io7m.jcoronado.api.VulkanLogicOp) // optionallogicOp.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
-