Module com.io7m.jcoronado.api
Package com.io7m.jcoronado.api
Class VulkanPipelineRasterizationStateCreateInfo
- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanPipelineRasterizationStateCreateInfo
-
- All Implemented Interfaces:
VulkanPipelineRasterizationStateCreateInfoType
public final class VulkanPipelineRasterizationStateCreateInfo extends java.lang.Object implements VulkanPipelineRasterizationStateCreateInfoType
- See Also:
- "VkPipelineRasterizationStateCreateInfo"
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VulkanPipelineRasterizationStateCreateInfo.Builder
Builds instances of typeVulkanPipelineRasterizationStateCreateInfo
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VulkanPipelineRasterizationStateCreateInfo.Builder
builder()
Creates a builder forVulkanPipelineRasterizationStateCreateInfo
.static VulkanPipelineRasterizationStateCreateInfo
copyOf(VulkanPipelineRasterizationStateCreateInfoType instance)
Creates an immutable copy of aVulkanPipelineRasterizationStateCreateInfoType
value.java.util.Set<VulkanCullModeFlag>
cullMode()
float
depthBiasClamp()
float
depthBiasConstantFactor()
boolean
depthBiasEnable()
float
depthBiasSlopeFactor()
boolean
depthClampEnable()
boolean
equals(java.lang.Object another)
This instance is equal to all instances ofVulkanPipelineRasterizationStateCreateInfo
that have equal attribute values.java.util.Set<VulkanPipelineRasterizationStateCreateFlag>
flags()
VulkanFrontFace
frontFace()
int
hashCode()
Computes a hash code from attributes:flags
,depthClampEnable
,rasterizerDiscardEnable
,polygonMode
,cullMode
,frontFace
,depthBiasEnable
,depthBiasConstantFactor
,depthBiasClamp
,depthBiasSlopeFactor
,lineWidth
.float
lineWidth()
static VulkanPipelineRasterizationStateCreateInfo
of(java.lang.Iterable<VulkanPipelineRasterizationStateCreateFlag> flags, boolean depthClampEnable, boolean rasterizerDiscardEnable, VulkanPolygonMode polygonMode, java.lang.Iterable<VulkanCullModeFlag> cullMode, VulkanFrontFace frontFace, boolean depthBiasEnable, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, float lineWidth)
Construct a new immutableVulkanPipelineRasterizationStateCreateInfo
instance.static VulkanPipelineRasterizationStateCreateInfo
of(java.util.Set<VulkanPipelineRasterizationStateCreateFlag> flags, boolean depthClampEnable, boolean rasterizerDiscardEnable, VulkanPolygonMode polygonMode, java.util.Set<VulkanCullModeFlag> cullMode, VulkanFrontFace frontFace, boolean depthBiasEnable, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, float lineWidth)
Construct a new immutableVulkanPipelineRasterizationStateCreateInfo
instance.VulkanPolygonMode
polygonMode()
boolean
rasterizerDiscardEnable()
java.lang.String
toString()
Prints the immutable valueVulkanPipelineRasterizationStateCreateInfo
with attribute values.VulkanPipelineRasterizationStateCreateInfo
withCullMode(VulkanCullModeFlag... elements)
Copy the current immutable object with elements that replace the content ofcullMode
.VulkanPipelineRasterizationStateCreateInfo
withCullMode(java.lang.Iterable<VulkanCullModeFlag> elements)
Copy the current immutable object with elements that replace the content ofcullMode
.VulkanPipelineRasterizationStateCreateInfo
withDepthBiasClamp(float value)
Copy the current immutable object by setting a value for thedepthBiasClamp
attribute.VulkanPipelineRasterizationStateCreateInfo
withDepthBiasConstantFactor(float value)
Copy the current immutable object by setting a value for thedepthBiasConstantFactor
attribute.VulkanPipelineRasterizationStateCreateInfo
withDepthBiasEnable(boolean value)
Copy the current immutable object by setting a value for thedepthBiasEnable
attribute.VulkanPipelineRasterizationStateCreateInfo
withDepthBiasSlopeFactor(float value)
Copy the current immutable object by setting a value for thedepthBiasSlopeFactor
attribute.VulkanPipelineRasterizationStateCreateInfo
withDepthClampEnable(boolean value)
Copy the current immutable object by setting a value for thedepthClampEnable
attribute.VulkanPipelineRasterizationStateCreateInfo
withFlags(VulkanPipelineRasterizationStateCreateFlag... elements)
Copy the current immutable object with elements that replace the content offlags
.VulkanPipelineRasterizationStateCreateInfo
withFlags(java.lang.Iterable<VulkanPipelineRasterizationStateCreateFlag> elements)
Copy the current immutable object with elements that replace the content offlags
.VulkanPipelineRasterizationStateCreateInfo
withFrontFace(VulkanFrontFace value)
Copy the current immutable object by setting a value for thefrontFace
attribute.VulkanPipelineRasterizationStateCreateInfo
withLineWidth(float value)
Copy the current immutable object by setting a value for thelineWidth
attribute.VulkanPipelineRasterizationStateCreateInfo
withPolygonMode(VulkanPolygonMode value)
Copy the current immutable object by setting a value for thepolygonMode
attribute.VulkanPipelineRasterizationStateCreateInfo
withRasterizerDiscardEnable(boolean value)
Copy the current immutable object by setting a value for therasterizerDiscardEnable
attribute.
-
-
-
Method Detail
-
flags
public java.util.Set<VulkanPipelineRasterizationStateCreateFlag> flags()
- Specified by:
flags
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- State creation flags
-
depthClampEnable
public boolean depthClampEnable()
- Specified by:
depthClampEnable
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- controls whether to clamp the fragment’s depth values instead of clipping primitives to the z planes of the frustum.
-
rasterizerDiscardEnable
public boolean rasterizerDiscardEnable()
- Specified by:
rasterizerDiscardEnable
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- controls whether primitives are discarded immediately before the rasterization stage.
-
polygonMode
public VulkanPolygonMode polygonMode()
- Specified by:
polygonMode
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- the triangle rendering mode.
-
cullMode
public java.util.Set<VulkanCullModeFlag> cullMode()
- Specified by:
cullMode
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- the triangle facing direction used for primitive culling.
-
frontFace
public VulkanFrontFace frontFace()
- Specified by:
frontFace
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- the front-facing triangle orientation to be used for culling.
-
depthBiasEnable
public boolean depthBiasEnable()
- Specified by:
depthBiasEnable
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- controls whether to bias fragment depth values.
-
depthBiasConstantFactor
public float depthBiasConstantFactor()
- Specified by:
depthBiasConstantFactor
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- a scalar factor controlling the constant depth value added to each fragment.
-
depthBiasClamp
public float depthBiasClamp()
- Specified by:
depthBiasClamp
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- the maximum (or minimum) depth bias of a fragment.
-
depthBiasSlopeFactor
public float depthBiasSlopeFactor()
- Specified by:
depthBiasSlopeFactor
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- a scalar factor applied to a fragment’s slope in depth bias calculations.
-
lineWidth
public float lineWidth()
- Specified by:
lineWidth
in interfaceVulkanPipelineRasterizationStateCreateInfoType
- Returns:
- the width of rasterized line segments.
-
withFlags
public final VulkanPipelineRasterizationStateCreateInfo withFlags(VulkanPipelineRasterizationStateCreateFlag... elements)
Copy the current immutable object with elements that replace the content offlags
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withFlags
public final VulkanPipelineRasterizationStateCreateInfo withFlags(java.lang.Iterable<VulkanPipelineRasterizationStateCreateFlag> 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
this
object
-
withDepthClampEnable
public final VulkanPipelineRasterizationStateCreateInfo withDepthClampEnable(boolean value)
Copy the current immutable object by setting a value for thedepthClampEnable
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for depthClampEnable- Returns:
- A modified copy of the
this
object
-
withRasterizerDiscardEnable
public final VulkanPipelineRasterizationStateCreateInfo withRasterizerDiscardEnable(boolean value)
Copy the current immutable object by setting a value for therasterizerDiscardEnable
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for rasterizerDiscardEnable- Returns:
- A modified copy of the
this
object
-
withPolygonMode
public final VulkanPipelineRasterizationStateCreateInfo withPolygonMode(VulkanPolygonMode value)
Copy the current immutable object by setting a value for thepolygonMode
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for polygonMode- Returns:
- A modified copy of the
this
object
-
withCullMode
public final VulkanPipelineRasterizationStateCreateInfo withCullMode(VulkanCullModeFlag... elements)
Copy the current immutable object with elements that replace the content ofcullMode
.- Parameters:
elements
- The elements to set- Returns:
- A modified copy of
this
object
-
withCullMode
public final VulkanPipelineRasterizationStateCreateInfo withCullMode(java.lang.Iterable<VulkanCullModeFlag> elements)
Copy the current immutable object with elements that replace the content ofcullMode
. A shallow reference equality check is used to prevent copying of the same value by returningthis
.- Parameters:
elements
- An iterable of cullMode elements to set- Returns:
- A modified copy of
this
object
-
withFrontFace
public final VulkanPipelineRasterizationStateCreateInfo withFrontFace(VulkanFrontFace value)
Copy the current immutable object by setting a value for thefrontFace
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for frontFace- Returns:
- A modified copy of the
this
object
-
withDepthBiasEnable
public final VulkanPipelineRasterizationStateCreateInfo withDepthBiasEnable(boolean value)
Copy the current immutable object by setting a value for thedepthBiasEnable
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for depthBiasEnable- Returns:
- A modified copy of the
this
object
-
withDepthBiasConstantFactor
public final VulkanPipelineRasterizationStateCreateInfo withDepthBiasConstantFactor(float value)
Copy the current immutable object by setting a value for thedepthBiasConstantFactor
attribute. A value strict bits equality used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for depthBiasConstantFactor- Returns:
- A modified copy of the
this
object
-
withDepthBiasClamp
public final VulkanPipelineRasterizationStateCreateInfo withDepthBiasClamp(float value)
Copy the current immutable object by setting a value for thedepthBiasClamp
attribute. A value strict bits equality used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for depthBiasClamp- Returns:
- A modified copy of the
this
object
-
withDepthBiasSlopeFactor
public final VulkanPipelineRasterizationStateCreateInfo withDepthBiasSlopeFactor(float value)
Copy the current immutable object by setting a value for thedepthBiasSlopeFactor
attribute. A value strict bits equality used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for depthBiasSlopeFactor- Returns:
- A modified copy of the
this
object
-
withLineWidth
public final VulkanPipelineRasterizationStateCreateInfo withLineWidth(float value)
Copy the current immutable object by setting a value for thelineWidth
attribute. A value strict bits equality used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for lineWidth- Returns:
- A modified copy of the
this
object
-
equals
public boolean equals(java.lang.Object another)
This instance is equal to all instances ofVulkanPipelineRasterizationStateCreateInfo
that have equal attribute values.- Overrides:
equals
in classjava.lang.Object
- Returns:
true
ifthis
is equal toanother
instance
-
hashCode
public int hashCode()
Computes a hash code from attributes:flags
,depthClampEnable
,rasterizerDiscardEnable
,polygonMode
,cullMode
,frontFace
,depthBiasEnable
,depthBiasConstantFactor
,depthBiasClamp
,depthBiasSlopeFactor
,lineWidth
.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueVulkanPipelineRasterizationStateCreateInfo
with attribute values.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of the value
-
of
public static VulkanPipelineRasterizationStateCreateInfo of(java.util.Set<VulkanPipelineRasterizationStateCreateFlag> flags, boolean depthClampEnable, boolean rasterizerDiscardEnable, VulkanPolygonMode polygonMode, java.util.Set<VulkanCullModeFlag> cullMode, VulkanFrontFace frontFace, boolean depthBiasEnable, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, float lineWidth)
Construct a new immutableVulkanPipelineRasterizationStateCreateInfo
instance.- Parameters:
flags
- The value for theflags
attributedepthClampEnable
- The value for thedepthClampEnable
attributerasterizerDiscardEnable
- The value for therasterizerDiscardEnable
attributepolygonMode
- The value for thepolygonMode
attributecullMode
- The value for thecullMode
attributefrontFace
- The value for thefrontFace
attributedepthBiasEnable
- The value for thedepthBiasEnable
attributedepthBiasConstantFactor
- The value for thedepthBiasConstantFactor
attributedepthBiasClamp
- The value for thedepthBiasClamp
attributedepthBiasSlopeFactor
- The value for thedepthBiasSlopeFactor
attributelineWidth
- The value for thelineWidth
attribute- Returns:
- An immutable VulkanPipelineRasterizationStateCreateInfo instance
-
of
public static VulkanPipelineRasterizationStateCreateInfo of(java.lang.Iterable<VulkanPipelineRasterizationStateCreateFlag> flags, boolean depthClampEnable, boolean rasterizerDiscardEnable, VulkanPolygonMode polygonMode, java.lang.Iterable<VulkanCullModeFlag> cullMode, VulkanFrontFace frontFace, boolean depthBiasEnable, float depthBiasConstantFactor, float depthBiasClamp, float depthBiasSlopeFactor, float lineWidth)
Construct a new immutableVulkanPipelineRasterizationStateCreateInfo
instance.- Parameters:
flags
- The value for theflags
attributedepthClampEnable
- The value for thedepthClampEnable
attributerasterizerDiscardEnable
- The value for therasterizerDiscardEnable
attributepolygonMode
- The value for thepolygonMode
attributecullMode
- The value for thecullMode
attributefrontFace
- The value for thefrontFace
attributedepthBiasEnable
- The value for thedepthBiasEnable
attributedepthBiasConstantFactor
- The value for thedepthBiasConstantFactor
attributedepthBiasClamp
- The value for thedepthBiasClamp
attributedepthBiasSlopeFactor
- The value for thedepthBiasSlopeFactor
attributelineWidth
- The value for thelineWidth
attribute- Returns:
- An immutable VulkanPipelineRasterizationStateCreateInfo instance
-
copyOf
public static VulkanPipelineRasterizationStateCreateInfo copyOf(VulkanPipelineRasterizationStateCreateInfoType instance)
Creates an immutable copy of aVulkanPipelineRasterizationStateCreateInfoType
value. 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 VulkanPipelineRasterizationStateCreateInfo instance
-
builder
public static VulkanPipelineRasterizationStateCreateInfo.Builder builder()
Creates a builder forVulkanPipelineRasterizationStateCreateInfo
.- Returns:
- A new VulkanPipelineRasterizationStateCreateInfo builder
-
-