Class VMAAllocatorCreateInfo.Builder
java.lang.Object
com.io7m.jcoronado.vma.VMAAllocatorCreateInfo.Builder
- Enclosing class:
VMAAllocatorCreateInfo
Builds instances of type
VMAAllocatorCreateInfo.
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 newVMAAllocatorCreateInfo.from(VMAAllocatorCreateInfoType instance) Fill a builder with attribute values from the providedVMAAllocatorCreateInfoTypeinstance.setFrameInUseCount(int frameInUseCount) Initializes the optional valueframeInUseCountto frameInUseCount.setFrameInUseCount(OptionalInt frameInUseCount) Initializes the optional valueframeInUseCountto frameInUseCount.setLogicalDevice(VulkanLogicalDeviceType logicalDevice) Initializes the value for thelogicalDeviceattribute.setPreferredLargeHeapBlockSize(long preferredLargeHeapBlockSize) Initializes the optional valuepreferredLargeHeapBlockSizeto preferredLargeHeapBlockSize.setPreferredLargeHeapBlockSize(OptionalLong preferredLargeHeapBlockSize) Initializes the optional valuepreferredLargeHeapBlockSizeto preferredLargeHeapBlockSize.
-
Method Details
-
from
Fill a builder with attribute values from the providedVMAAllocatorCreateInfoTypeinstance. 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
-
setLogicalDevice
Initializes the value for thelogicalDeviceattribute.- Parameters:
logicalDevice- The value for logicalDevice- Returns:
thisbuilder for use in a chained invocation
-
setPreferredLargeHeapBlockSize
public final VMAAllocatorCreateInfo.Builder setPreferredLargeHeapBlockSize(long preferredLargeHeapBlockSize) Initializes the optional valuepreferredLargeHeapBlockSizeto preferredLargeHeapBlockSize.- Parameters:
preferredLargeHeapBlockSize- The value for preferredLargeHeapBlockSize- Returns:
thisbuilder for chained invocation
-
setPreferredLargeHeapBlockSize
public final VMAAllocatorCreateInfo.Builder setPreferredLargeHeapBlockSize(OptionalLong preferredLargeHeapBlockSize) Initializes the optional valuepreferredLargeHeapBlockSizeto preferredLargeHeapBlockSize.- Parameters:
preferredLargeHeapBlockSize- The value for preferredLargeHeapBlockSize- Returns:
thisbuilder for use in a chained invocation
-
setFrameInUseCount
Initializes the optional valueframeInUseCountto frameInUseCount.- Parameters:
frameInUseCount- The value for frameInUseCount- Returns:
thisbuilder for chained invocation
-
setFrameInUseCount
Initializes the optional valueframeInUseCountto frameInUseCount.- Parameters:
frameInUseCount- The value for frameInUseCount- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newVMAAllocatorCreateInfo.- Returns:
- An immutable instance of VMAAllocatorCreateInfo
- Throws:
IllegalStateException- if any required attributes are missing
-