Class VulkanSubresourceLayout.Builder
java.lang.Object
com.io7m.jcoronado.api.VulkanSubresourceLayout.Builder
- Enclosing class:
VulkanSubresourceLayout
Builds instances of type
VulkanSubresourceLayout.
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 TypeMethodDescriptionbuild()Builds a newVulkanSubresourceLayout.from(VulkanSubresourceLayoutType instance) Fill a builder with attribute values from the providedVulkanSubresourceLayoutTypeinstance.setArrayPitch(long arrayPitch) Initializes the value for thearrayPitchattribute.setDepthPitch(long depthPitch) Initializes the value for thedepthPitchattribute.setOffset(long offset) Initializes the value for theoffsetattribute.setRowPitch(long rowPitch) Initializes the value for therowPitchattribute.setSize(long size) Initializes the value for thesizeattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedVulkanSubresourceLayoutTypeinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
setOffset
-
setSize
-
setRowPitch
-
setArrayPitch
Initializes the value for thearrayPitchattribute.If not set, this attribute will have a default value as returned by the initializer of
arrayPitch.- Parameters:
arrayPitch- The value for arrayPitch- Returns:
thisbuilder for use in a chained invocation
-
setDepthPitch
Initializes the value for thedepthPitchattribute.If not set, this attribute will have a default value as returned by the initializer of
depthPitch.- Parameters:
depthPitch- The value for depthPitch- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newVulkanSubresourceLayout.- Returns:
- An immutable instance of VulkanSubresourceLayout
- Throws:
IllegalStateException- if any required attributes are missing
-