- java.lang.Object
-
- com.io7m.jcoronado.vma.VMAAllocationInfo.Builder
-
- Enclosing class:
- VMAAllocationInfo
public static final class VMAAllocationInfo.Builder extends java.lang.Object
Builds instances of typeVMAAllocationInfo
. 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VMAAllocationInfo
build()
Builds a newVMAAllocationInfo
.VMAAllocationInfo.Builder
from(VMAAllocationInfoType instance)
Fill a builder with attribute values from the providedVMAAllocationInfoType
instance.VMAAllocationInfo.Builder
setDeviceMemory(VulkanDeviceMemoryType deviceMemory)
Initializes the optional valuedeviceMemory
to deviceMemory.VMAAllocationInfo.Builder
setDeviceMemory(java.util.Optional<? extends VulkanDeviceMemoryType> deviceMemory)
Initializes the optional valuedeviceMemory
to deviceMemory.VMAAllocationInfo.Builder
setMemoryType(long memoryType)
Initializes the value for thememoryType
attribute.VMAAllocationInfo.Builder
setOffset(long offset)
Initializes the value for theoffset
attribute.VMAAllocationInfo.Builder
setSize(long size)
Initializes the value for thesize
attribute.
-
-
-
Method Detail
-
from
public final VMAAllocationInfo.Builder from(VMAAllocationInfoType instance)
Fill a builder with attribute values from the providedVMAAllocationInfoType
instance. 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:
this
builder for use in a chained invocation
-
setMemoryType
public final VMAAllocationInfo.Builder setMemoryType(long memoryType)
Initializes the value for thememoryType
attribute.- Parameters:
memoryType
- The value for memoryType- Returns:
this
builder for use in a chained invocation
-
setDeviceMemory
public final VMAAllocationInfo.Builder setDeviceMemory(VulkanDeviceMemoryType deviceMemory)
Initializes the optional valuedeviceMemory
to deviceMemory.- Parameters:
deviceMemory
- The value for deviceMemory- Returns:
this
builder for chained invocation
-
setDeviceMemory
public final VMAAllocationInfo.Builder setDeviceMemory(java.util.Optional<? extends VulkanDeviceMemoryType> deviceMemory)
Initializes the optional valuedeviceMemory
to deviceMemory.- Parameters:
deviceMemory
- The value for deviceMemory- Returns:
this
builder for use in a chained invocation
-
setOffset
public final VMAAllocationInfo.Builder setOffset(long offset)
Initializes the value for theoffset
attribute.- Parameters:
offset
- The value for offset- Returns:
this
builder for use in a chained invocation
-
setSize
public final VMAAllocationInfo.Builder setSize(long size)
Initializes the value for thesize
attribute.- Parameters:
size
- The value for size- Returns:
this
builder for use in a chained invocation
-
build
public VMAAllocationInfo build()
Builds a newVMAAllocationInfo
.- Returns:
- An immutable instance of VMAAllocationInfo
- Throws:
java.lang.IllegalStateException
- if any required attributes are missing
-
-