Module com.io7m.jcoronado.api
Package com.io7m.jcoronado.api
Class VulkanGraphicsPipelineCreateInfo.Builder
- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanGraphicsPipelineCreateInfo.Builder
-
- Enclosing class:
- VulkanGraphicsPipelineCreateInfo
public static final class VulkanGraphicsPipelineCreateInfo.Builder extends java.lang.Object
Builds instances of typeVulkanGraphicsPipelineCreateInfo
. Initialize attributes and then invoke thebuild()
method to create an immutable instance.Builder
is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
-
-
-
Method Detail
-
from
public final VulkanGraphicsPipelineCreateInfo.Builder from(VulkanGraphicsPipelineCreateInfoType instance)
Fill a builder with attribute values from the providedVulkanGraphicsPipelineCreateInfoType
instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.- Parameters:
instance
- The instance from which to copy values- Returns:
this
builder for use in a chained invocation
-
addFlags
public final VulkanGraphicsPipelineCreateInfo.Builder addFlags(VulkanPipelineCreateFlag element)
Adds one element toflags
set.- Parameters:
element
- A flags element- Returns:
this
builder for use in a chained invocation
-
addFlags
public final VulkanGraphicsPipelineCreateInfo.Builder addFlags(VulkanPipelineCreateFlag... elements)
Adds elements toflags
set.- Parameters:
elements
- An array of flags elements- Returns:
this
builder for use in a chained invocation
-
setFlags
public final VulkanGraphicsPipelineCreateInfo.Builder setFlags(java.lang.Iterable<VulkanPipelineCreateFlag> elements)
Sets or replaces all elements forflags
set.- Parameters:
elements
- An iterable of flags elements- Returns:
this
builder for use in a chained invocation
-
addAllFlags
public final VulkanGraphicsPipelineCreateInfo.Builder addAllFlags(java.lang.Iterable<VulkanPipelineCreateFlag> elements)
Adds elements toflags
set.- Parameters:
elements
- An iterable of flags elements- Returns:
this
builder for use in a chained invocation
-
addStages
public final VulkanGraphicsPipelineCreateInfo.Builder addStages(VulkanPipelineShaderStageCreateInfo element)
Adds one element tostages
list.- Parameters:
element
- A stages element- Returns:
this
builder for use in a chained invocation
-
addStages
public final VulkanGraphicsPipelineCreateInfo.Builder addStages(VulkanPipelineShaderStageCreateInfo... elements)
Adds elements tostages
list.- Parameters:
elements
- An array of stages elements- Returns:
this
builder for use in a chained invocation
-
setStages
public final VulkanGraphicsPipelineCreateInfo.Builder setStages(java.lang.Iterable<? extends VulkanPipelineShaderStageCreateInfo> elements)
Sets or replaces all elements forstages
list.- Parameters:
elements
- An iterable of stages elements- Returns:
this
builder for use in a chained invocation
-
addAllStages
public final VulkanGraphicsPipelineCreateInfo.Builder addAllStages(java.lang.Iterable<? extends VulkanPipelineShaderStageCreateInfo> elements)
Adds elements tostages
list.- Parameters:
elements
- An iterable of stages elements- Returns:
this
builder for use in a chained invocation
-
setVertexInputState
public final VulkanGraphicsPipelineCreateInfo.Builder setVertexInputState(VulkanPipelineVertexInputStateCreateInfo vertexInputState)
Initializes the value for thevertexInputState
attribute.- Parameters:
vertexInputState
- The value for vertexInputState- Returns:
this
builder for use in a chained invocation
-
setInputAssemblyState
public final VulkanGraphicsPipelineCreateInfo.Builder setInputAssemblyState(VulkanPipelineInputAssemblyStateCreateInfo inputAssemblyState)
Initializes the value for theinputAssemblyState
attribute.- Parameters:
inputAssemblyState
- The value for inputAssemblyState- Returns:
this
builder for use in a chained invocation
-
setTessellationState
public final VulkanGraphicsPipelineCreateInfo.Builder setTessellationState(VulkanPipelineTessellationStateCreateInfo tessellationState)
Initializes the optional valuetessellationState
to tessellationState.- Parameters:
tessellationState
- The value for tessellationState- Returns:
this
builder for chained invocation
-
setTessellationState
public final VulkanGraphicsPipelineCreateInfo.Builder setTessellationState(java.util.Optional<? extends VulkanPipelineTessellationStateCreateInfo> tessellationState)
Initializes the optional valuetessellationState
to tessellationState.- Parameters:
tessellationState
- The value for tessellationState- Returns:
this
builder for use in a chained invocation
-
setViewportState
public final VulkanGraphicsPipelineCreateInfo.Builder setViewportState(VulkanPipelineViewportStateCreateInfo viewportState)
Initializes the optional valueviewportState
to viewportState.- Parameters:
viewportState
- The value for viewportState- Returns:
this
builder for chained invocation
-
setViewportState
public final VulkanGraphicsPipelineCreateInfo.Builder setViewportState(java.util.Optional<? extends VulkanPipelineViewportStateCreateInfo> viewportState)
Initializes the optional valueviewportState
to viewportState.- Parameters:
viewportState
- The value for viewportState- Returns:
this
builder for use in a chained invocation
-
setRasterizationState
public final VulkanGraphicsPipelineCreateInfo.Builder setRasterizationState(VulkanPipelineRasterizationStateCreateInfo rasterizationState)
Initializes the value for therasterizationState
attribute.- Parameters:
rasterizationState
- The value for rasterizationState- Returns:
this
builder for use in a chained invocation
-
setMultisampleState
public final VulkanGraphicsPipelineCreateInfo.Builder setMultisampleState(VulkanPipelineMultisampleStateCreateInfo multisampleState)
Initializes the optional valuemultisampleState
to multisampleState.- Parameters:
multisampleState
- The value for multisampleState- Returns:
this
builder for chained invocation
-
setMultisampleState
public final VulkanGraphicsPipelineCreateInfo.Builder setMultisampleState(java.util.Optional<? extends VulkanPipelineMultisampleStateCreateInfo> multisampleState)
Initializes the optional valuemultisampleState
to multisampleState.- Parameters:
multisampleState
- The value for multisampleState- Returns:
this
builder for use in a chained invocation
-
setDepthStencilState
public final VulkanGraphicsPipelineCreateInfo.Builder setDepthStencilState(VulkanPipelineDepthStencilStateCreateInfo depthStencilState)
Initializes the optional valuedepthStencilState
to depthStencilState.- Parameters:
depthStencilState
- The value for depthStencilState- Returns:
this
builder for chained invocation
-
setDepthStencilState
public final VulkanGraphicsPipelineCreateInfo.Builder setDepthStencilState(java.util.Optional<? extends VulkanPipelineDepthStencilStateCreateInfo> depthStencilState)
Initializes the optional valuedepthStencilState
to depthStencilState.- Parameters:
depthStencilState
- The value for depthStencilState- Returns:
this
builder for use in a chained invocation
-
setColorBlendState
public final VulkanGraphicsPipelineCreateInfo.Builder setColorBlendState(VulkanPipelineColorBlendStateCreateInfo colorBlendState)
Initializes the optional valuecolorBlendState
to colorBlendState.- Parameters:
colorBlendState
- The value for colorBlendState- Returns:
this
builder for chained invocation
-
setColorBlendState
public final VulkanGraphicsPipelineCreateInfo.Builder setColorBlendState(java.util.Optional<? extends VulkanPipelineColorBlendStateCreateInfo> colorBlendState)
Initializes the optional valuecolorBlendState
to colorBlendState.- Parameters:
colorBlendState
- The value for colorBlendState- Returns:
this
builder for use in a chained invocation
-
setDynamicState
public final VulkanGraphicsPipelineCreateInfo.Builder setDynamicState(VulkanPipelineDynamicStateCreateInfo dynamicState)
Initializes the optional valuedynamicState
to dynamicState.- Parameters:
dynamicState
- The value for dynamicState- Returns:
this
builder for chained invocation
-
setDynamicState
public final VulkanGraphicsPipelineCreateInfo.Builder setDynamicState(java.util.Optional<? extends VulkanPipelineDynamicStateCreateInfo> dynamicState)
Initializes the optional valuedynamicState
to dynamicState.- Parameters:
dynamicState
- The value for dynamicState- Returns:
this
builder for use in a chained invocation
-
setLayout
public final VulkanGraphicsPipelineCreateInfo.Builder setLayout(VulkanPipelineLayoutType layout)
Initializes the value for thelayout
attribute.- Parameters:
layout
- The value for layout- Returns:
this
builder for use in a chained invocation
-
setRenderPass
public final VulkanGraphicsPipelineCreateInfo.Builder setRenderPass(VulkanRenderPassType renderPass)
Initializes the value for therenderPass
attribute.- Parameters:
renderPass
- The value for renderPass- Returns:
this
builder for use in a chained invocation
-
setSubpass
public final VulkanGraphicsPipelineCreateInfo.Builder setSubpass(int subpass)
Initializes the value for thesubpass
attribute.- Parameters:
subpass
- The value for subpass- Returns:
this
builder for use in a chained invocation
-
setBasePipeline
public final VulkanGraphicsPipelineCreateInfo.Builder setBasePipeline(VulkanPipelineType basePipeline)
Initializes the optional valuebasePipeline
to basePipeline.- Parameters:
basePipeline
- The value for basePipeline- Returns:
this
builder for chained invocation
-
setBasePipeline
public final VulkanGraphicsPipelineCreateInfo.Builder setBasePipeline(java.util.Optional<? extends VulkanPipelineType> basePipeline)
Initializes the optional valuebasePipeline
to basePipeline.- Parameters:
basePipeline
- The value for basePipeline- Returns:
this
builder for use in a chained invocation
-
setBasePipelineIndex
public final VulkanGraphicsPipelineCreateInfo.Builder setBasePipelineIndex(int basePipelineIndex)
Initializes the optional valuebasePipelineIndex
to basePipelineIndex.- Parameters:
basePipelineIndex
- The value for basePipelineIndex- Returns:
this
builder for chained invocation
-
setBasePipelineIndex
public final VulkanGraphicsPipelineCreateInfo.Builder setBasePipelineIndex(java.util.OptionalInt basePipelineIndex)
Initializes the optional valuebasePipelineIndex
to basePipelineIndex.- Parameters:
basePipelineIndex
- The value for basePipelineIndex- Returns:
this
builder for use in a chained invocation
-
build
public VulkanGraphicsPipelineCreateInfo build()
Builds a newVulkanGraphicsPipelineCreateInfo
.- Returns:
- An immutable instance of VulkanGraphicsPipelineCreateInfo
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-
-