Class VulkanComputePipelineCreateInfo.Builder
java.lang.Object
com.io7m.jcoronado.api.VulkanComputePipelineCreateInfo.Builder
- Enclosing class:
VulkanComputePipelineCreateInfo
Builds instances of type
VulkanComputePipelineCreateInfo.
Initialize attributes and then invoke the build() 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
Modifier and TypeMethodDescriptionaddAllFlags(Iterable<VulkanPipelineCreateFlag> elements) Adds elements toflagsset.addFlags(VulkanPipelineCreateFlag element) Adds one element toflagsset.addFlags(VulkanPipelineCreateFlag... elements) Adds elements toflagsset.build()Builds a newVulkanComputePipelineCreateInfo.from(VulkanComputePipelineCreateInfoType instance) Fill a builder with attribute values from the providedVulkanComputePipelineCreateInfoTypeinstance.setBasePipeline(VulkanPipelineType basePipeline) Initializes the optional valuebasePipelineto basePipeline.setBasePipeline(Optional<? extends VulkanPipelineType> basePipeline) Initializes the optional valuebasePipelineto basePipeline.setBasePipelineIndex(int basePipelineIndex) Initializes the optional valuebasePipelineIndexto basePipelineIndex.setBasePipelineIndex(OptionalInt basePipelineIndex) Initializes the optional valuebasePipelineIndexto basePipelineIndex.setFlags(Iterable<VulkanPipelineCreateFlag> elements) Sets or replaces all elements forflagsset.setLayout(VulkanPipelineLayoutType layout) Initializes the value for thelayoutattribute.Initializes the value for thestageattribute.
-
Method Details
-
from
public final VulkanComputePipelineCreateInfo.Builder from(VulkanComputePipelineCreateInfoType instance) Fill a builder with attribute values from the providedVulkanComputePipelineCreateInfoTypeinstance. 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:
thisbuilder for use in a chained invocation
-
addFlags
Adds one element toflagsset.- Parameters:
element- A flags element- Returns:
thisbuilder for use in a chained invocation
-
addFlags
Adds elements toflagsset.- Parameters:
elements- An array of flags elements- Returns:
thisbuilder for use in a chained invocation
-
setFlags
public final VulkanComputePipelineCreateInfo.Builder setFlags(Iterable<VulkanPipelineCreateFlag> elements) Sets or replaces all elements forflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
addAllFlags
public final VulkanComputePipelineCreateInfo.Builder addAllFlags(Iterable<VulkanPipelineCreateFlag> elements) Adds elements toflagsset.- Parameters:
elements- An iterable of flags elements- Returns:
thisbuilder for use in a chained invocation
-
setStage
public final VulkanComputePipelineCreateInfo.Builder setStage(VulkanPipelineShaderStageCreateInfo stage) Initializes the value for thestageattribute.- Parameters:
stage- The value for stage- Returns:
thisbuilder for use in a chained invocation
-
setLayout
Initializes the value for thelayoutattribute.- Parameters:
layout- The value for layout- Returns:
thisbuilder for use in a chained invocation
-
setBasePipeline
public final VulkanComputePipelineCreateInfo.Builder setBasePipeline(VulkanPipelineType basePipeline) Initializes the optional valuebasePipelineto basePipeline.- Parameters:
basePipeline- The value for basePipeline- Returns:
thisbuilder for chained invocation
-
setBasePipeline
public final VulkanComputePipelineCreateInfo.Builder setBasePipeline(Optional<? extends VulkanPipelineType> basePipeline) Initializes the optional valuebasePipelineto basePipeline.- Parameters:
basePipeline- The value for basePipeline- Returns:
thisbuilder for use in a chained invocation
-
setBasePipelineIndex
Initializes the optional valuebasePipelineIndexto basePipelineIndex.- Parameters:
basePipelineIndex- The value for basePipelineIndex- Returns:
thisbuilder for chained invocation
-
setBasePipelineIndex
public final VulkanComputePipelineCreateInfo.Builder setBasePipelineIndex(OptionalInt basePipelineIndex) Initializes the optional valuebasePipelineIndexto basePipelineIndex.- Parameters:
basePipelineIndex- The value for basePipelineIndex- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newVulkanComputePipelineCreateInfo.- Returns:
- An immutable instance of VulkanComputePipelineCreateInfo
- Throws:
IllegalStateException- if any required attributes are missing
-