Class VulkanLogicalDeviceQueueCreateInfo
java.lang.Object
com.io7m.jcoronado.api.VulkanLogicalDeviceQueueCreateInfo
- All Implemented Interfaces:
VulkanLogicalDeviceQueueCreateInfoType
public final class VulkanLogicalDeviceQueueCreateInfo
extends Object
implements VulkanLogicalDeviceQueueCreateInfoType
The information required to create a queue on a device.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanLogicalDeviceQueueCreateInfo. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a builder forVulkanLogicalDeviceQueueCreateInfo.copyOf(VulkanLogicalDeviceQueueCreateInfoType instance) Creates an immutable copy of aVulkanLogicalDeviceQueueCreateInfoTypevalue.booleanThis instance is equal to all instances ofVulkanLogicalDeviceQueueCreateInfothat have equal attribute values.flags()inthashCode()Computes a hash code from attributes:flags,queueFamilyIndex,queuePriorities.of(Iterable<VulkanDeviceQueueCreationFlag> flags, VulkanQueueFamilyIndex queueFamilyIndex, Iterable<Float> queuePriorities) Construct a new immutableVulkanLogicalDeviceQueueCreateInfoinstance.of(Set<VulkanDeviceQueueCreationFlag> flags, VulkanQueueFamilyIndex queueFamilyIndex, List<Float> queuePriorities) Construct a new immutableVulkanLogicalDeviceQueueCreateInfoinstance.Set the priorities of the created queues.toString()Prints the immutable valueVulkanLogicalDeviceQueueCreateInfowith attribute values.withFlags(VulkanDeviceQueueCreationFlag... elements) Copy the current immutable object with elements that replace the content offlags.withFlags(Iterable<VulkanDeviceQueueCreationFlag> elements) Copy the current immutable object with elements that replace the content offlags.Copy the current immutable object by setting a value for thequeueFamilyIndexattribute.withQueuePriorities(float... elements) Copy the current immutable object with elements that replace the content ofqueuePriorities.withQueuePriorities(Iterable<Float> elements) Copy the current immutable object with elements that replace the content ofqueuePriorities.Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.io7m.jcoronado.api.VulkanLogicalDeviceQueueCreateInfoType
checkPreconditions
-
Method Details
-
flags
- Specified by:
flagsin interfaceVulkanLogicalDeviceQueueCreateInfoType- Returns:
- The flags used to create the queue(s)
-
queueFamilyIndex
- Specified by:
queueFamilyIndexin interfaceVulkanLogicalDeviceQueueCreateInfoType- Returns:
- The queue family
-
queuePriorities
Set the priorities of the created queues. The number of priority values set will implicitly set the number of queues to create.- Specified by:
queuePrioritiesin interfaceVulkanLogicalDeviceQueueCreateInfoType- Returns:
- The priorities of the queues
-
withFlags
public final VulkanLogicalDeviceQueueCreateInfo withFlags(VulkanDeviceQueueCreationFlag... elements) Copy the current immutable object with elements that replace the content offlags.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withFlags
public final VulkanLogicalDeviceQueueCreateInfo withFlags(Iterable<VulkanDeviceQueueCreationFlag> elements) Copy the current immutable object with elements that replace the content offlags. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of flags elements to set- Returns:
- A modified copy of
thisobject
-
withQueueFamilyIndex
Copy the current immutable object by setting a value for thequeueFamilyIndexattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for queueFamilyIndex- Returns:
- A modified copy of the
thisobject
-
withQueuePriorities
Copy the current immutable object with elements that replace the content ofqueuePriorities.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withQueuePriorities
Copy the current immutable object with elements that replace the content ofqueuePriorities. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of queuePriorities elements to set- Returns:
- A modified copy of
thisobject
-
equals
-
hashCode
-
toString
-
of
public static VulkanLogicalDeviceQueueCreateInfo of(Set<VulkanDeviceQueueCreationFlag> flags, VulkanQueueFamilyIndex queueFamilyIndex, List<Float> queuePriorities) Construct a new immutableVulkanLogicalDeviceQueueCreateInfoinstance.- Parameters:
flags- The value for theflagsattributequeueFamilyIndex- The value for thequeueFamilyIndexattributequeuePriorities- The value for thequeuePrioritiesattribute- Returns:
- An immutable VulkanLogicalDeviceQueueCreateInfo instance
-
of
public static VulkanLogicalDeviceQueueCreateInfo of(Iterable<VulkanDeviceQueueCreationFlag> flags, VulkanQueueFamilyIndex queueFamilyIndex, Iterable<Float> queuePriorities) Construct a new immutableVulkanLogicalDeviceQueueCreateInfoinstance.- Parameters:
flags- The value for theflagsattributequeueFamilyIndex- The value for thequeueFamilyIndexattributequeuePriorities- The value for thequeuePrioritiesattribute- Returns:
- An immutable VulkanLogicalDeviceQueueCreateInfo instance
-
copyOf
public static VulkanLogicalDeviceQueueCreateInfo copyOf(VulkanLogicalDeviceQueueCreateInfoType instance) Creates an immutable copy of aVulkanLogicalDeviceQueueCreateInfoTypevalue. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Parameters:
instance- The instance to copy- Returns:
- A copied immutable VulkanLogicalDeviceQueueCreateInfo instance
-
builder
Creates a builder forVulkanLogicalDeviceQueueCreateInfo.VulkanLogicalDeviceQueueCreateInfo.builder() .addFlags|addAllFlags(com.io7m.jcoronado.api.VulkanDeviceQueueCreationFlag) //flagselements .setQueueFamilyIndex(com.io7m.jcoronado.api.VulkanQueueFamilyIndex) // requiredqueueFamilyIndex.addQueuePriorities|addAllQueuePriorities(float) //queuePrioritieselements .build();- Returns:
- A new VulkanLogicalDeviceQueueCreateInfo builder
-