Class VulkanPipelineMultisampleStateCreateInfo
java.lang.Object
com.io7m.jcoronado.api.VulkanPipelineMultisampleStateCreateInfo
- All Implemented Interfaces:
VulkanPipelineMultisampleStateCreateInfoType
public final class VulkanPipelineMultisampleStateCreateInfo
extends Object
implements VulkanPipelineMultisampleStateCreateInfoType
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanPipelineMultisampleStateCreateInfo. -
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleanbuilder()Creates a builder forVulkanPipelineMultisampleStateCreateInfo.Creates an immutable copy of aVulkanPipelineMultisampleStateCreateInfoTypevalue.booleanThis instance is equal to all instances ofVulkanPipelineMultisampleStateCreateInfothat have equal attribute values.flags()inthashCode()Computes a hash code from attributes:flags,rasterizationSamples,sampleShadingEnable,minSampleShading,sampleMask,alphaToCoverageEnable,alphaToOneEnable.floatof(Iterable<VulkanPipelineMultisampleStateCreateFlag> flags, VulkanSampleCountFlag rasterizationSamples, boolean sampleShadingEnable, float minSampleShading, Optional<? extends int[]> sampleMask, boolean alphaToCoverageEnable, boolean alphaToOneEnable) Construct a new immutableVulkanPipelineMultisampleStateCreateInfoinstance.of(Set<VulkanPipelineMultisampleStateCreateFlag> flags, VulkanSampleCountFlag rasterizationSamples, boolean sampleShadingEnable, float minSampleShading, Optional<int[]> sampleMask, boolean alphaToCoverageEnable, boolean alphaToOneEnable) Construct a new immutableVulkanPipelineMultisampleStateCreateInfoinstance.Optional<int[]> booleantoString()Prints the immutable valueVulkanPipelineMultisampleStateCreateInfowith attribute values.withAlphaToCoverageEnable(boolean value) Copy the current immutable object by setting a value for thealphaToCoverageEnableattribute.withAlphaToOneEnable(boolean value) Copy the current immutable object by setting a value for thealphaToOneEnableattribute.withFlags(VulkanPipelineMultisampleStateCreateFlag... 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.withMinSampleShading(float value) Copy the current immutable object by setting a value for theminSampleShadingattribute.Copy the current immutable object by setting a value for therasterizationSamplesattribute.withSampleMask(int[] value) Copy the current immutable object by setting a present value for the optionalsampleMaskattribute.withSampleMask(Optional<? extends int[]> optional) Copy the current immutable object by setting an optional value for thesampleMaskattribute.withSampleShadingEnable(boolean value) Copy the current immutable object by setting a value for thesampleShadingEnableattribute.
-
Method Details
-
flags
- Specified by:
flagsin interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
- Flags reserved for future use
-
rasterizationSamples
- Specified by:
rasterizationSamplesin interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
- The number of samples per pixel used in rasterization.
-
sampleShadingEnable
public boolean sampleShadingEnable()- Specified by:
sampleShadingEnablein interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
trueif sample shading should be enabled
-
minSampleShading
public float minSampleShading()- Specified by:
minSampleShadingin interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
- minimum fraction of sample shading if
sampleShadingEnable()istrue
-
sampleMask
- Specified by:
sampleMaskin interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
- static coverage information that is ANDed with the coverage information generated during rasterization.
-
alphaToCoverageEnable
public boolean alphaToCoverageEnable()- Specified by:
alphaToCoverageEnablein interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
trueif a temporary coverage value is generated based on the alpha component of the fragment’s first color output
-
alphaToOneEnable
public boolean alphaToOneEnable()- Specified by:
alphaToOneEnablein interfaceVulkanPipelineMultisampleStateCreateInfoType- Returns:
trueif the alpha component of the fragment’s first color output is replaced with one as described in "Multisample Coverage".
-
withFlags
public final VulkanPipelineMultisampleStateCreateInfo withFlags(VulkanPipelineMultisampleStateCreateFlag... 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 VulkanPipelineMultisampleStateCreateInfo withFlags(Iterable<VulkanPipelineMultisampleStateCreateFlag> 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
-
withRasterizationSamples
public final VulkanPipelineMultisampleStateCreateInfo withRasterizationSamples(VulkanSampleCountFlag value) Copy the current immutable object by setting a value for therasterizationSamplesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for rasterizationSamples- Returns:
- A modified copy of the
thisobject
-
withSampleShadingEnable
Copy the current immutable object by setting a value for thesampleShadingEnableattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sampleShadingEnable- Returns:
- A modified copy of the
thisobject
-
withMinSampleShading
Copy the current immutable object by setting a value for theminSampleShadingattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minSampleShading- Returns:
- A modified copy of the
thisobject
-
withSampleMask
Copy the current immutable object by setting a present value for the optionalsampleMaskattribute.- Parameters:
value- The value for sampleMask- Returns:
- A modified copy of
thisobject
-
withSampleMask
public final VulkanPipelineMultisampleStateCreateInfo withSampleMask(Optional<? extends int[]> optional) Copy the current immutable object by setting an optional value for thesampleMaskattribute. A shallow reference equality check is used on unboxed optional value to prevent copying of the same value by returningthis.- Parameters:
optional- A value for sampleMask- Returns:
- A modified copy of
thisobject
-
withAlphaToCoverageEnable
Copy the current immutable object by setting a value for thealphaToCoverageEnableattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for alphaToCoverageEnable- Returns:
- A modified copy of the
thisobject
-
withAlphaToOneEnable
Copy the current immutable object by setting a value for thealphaToOneEnableattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for alphaToOneEnable- Returns:
- A modified copy of the
thisobject
-
equals
-
hashCode
-
toString
-
of
public static VulkanPipelineMultisampleStateCreateInfo of(Set<VulkanPipelineMultisampleStateCreateFlag> flags, VulkanSampleCountFlag rasterizationSamples, boolean sampleShadingEnable, float minSampleShading, Optional<int[]> sampleMask, boolean alphaToCoverageEnable, boolean alphaToOneEnable) Construct a new immutableVulkanPipelineMultisampleStateCreateInfoinstance.- Parameters:
flags- The value for theflagsattributerasterizationSamples- The value for therasterizationSamplesattributesampleShadingEnable- The value for thesampleShadingEnableattributeminSampleShading- The value for theminSampleShadingattributesampleMask- The value for thesampleMaskattributealphaToCoverageEnable- The value for thealphaToCoverageEnableattributealphaToOneEnable- The value for thealphaToOneEnableattribute- Returns:
- An immutable VulkanPipelineMultisampleStateCreateInfo instance
-
of
public static VulkanPipelineMultisampleStateCreateInfo of(Iterable<VulkanPipelineMultisampleStateCreateFlag> flags, VulkanSampleCountFlag rasterizationSamples, boolean sampleShadingEnable, float minSampleShading, Optional<? extends int[]> sampleMask, boolean alphaToCoverageEnable, boolean alphaToOneEnable) Construct a new immutableVulkanPipelineMultisampleStateCreateInfoinstance.- Parameters:
flags- The value for theflagsattributerasterizationSamples- The value for therasterizationSamplesattributesampleShadingEnable- The value for thesampleShadingEnableattributeminSampleShading- The value for theminSampleShadingattributesampleMask- The value for thesampleMaskattributealphaToCoverageEnable- The value for thealphaToCoverageEnableattributealphaToOneEnable- The value for thealphaToOneEnableattribute- Returns:
- An immutable VulkanPipelineMultisampleStateCreateInfo instance
-
copyOf
public static VulkanPipelineMultisampleStateCreateInfo copyOf(VulkanPipelineMultisampleStateCreateInfoType instance) Creates an immutable copy of aVulkanPipelineMultisampleStateCreateInfoTypevalue. 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 VulkanPipelineMultisampleStateCreateInfo instance
-
builder
Creates a builder forVulkanPipelineMultisampleStateCreateInfo.VulkanPipelineMultisampleStateCreateInfo.builder() .addFlags|addAllFlags(com.io7m.jcoronado.api.VulkanPipelineMultisampleStateCreateFlag) //flagselements .setRasterizationSamples(com.io7m.jcoronado.api.VulkanSampleCountFlag) // requiredrasterizationSamples.setSampleShadingEnable(boolean) // requiredsampleShadingEnable.setMinSampleShading(float) // requiredminSampleShading.setSampleMask(int[]) // optionalsampleMask.setAlphaToCoverageEnable(boolean) // requiredalphaToCoverageEnable.setAlphaToOneEnable(boolean) // requiredalphaToOneEnable.build();- Returns:
- A new VulkanPipelineMultisampleStateCreateInfo builder
-