Class VulkanPhysicalDeviceProperties
java.lang.Object
com.io7m.jcoronado.api.VulkanPhysicalDeviceProperties
- All Implemented Interfaces:
VulkanPhysicalDevicePropertiesType
public final class VulkanPhysicalDeviceProperties
extends Object
implements VulkanPhysicalDevicePropertiesType
The basic properties of a device.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanPhysicalDeviceProperties.Nested classes/interfaces inherited from interface VulkanPhysicalDevicePropertiesType
VulkanPhysicalDevicePropertiesType.Type -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a builder forVulkanPhysicalDeviceProperties.copyOf(VulkanPhysicalDevicePropertiesType instance) Creates an immutable copy of aVulkanPhysicalDevicePropertiesTypevalue.booleanThis instance is equal to all instances ofVulkanPhysicalDevicePropertiesthat have equal attribute values.inthashCode()Computes a hash code from attributes:name,type,id,vendorId,apiVersion,driverVersion.intid()name()toString()Prints the immutable valueVulkanPhysicalDevicePropertieswith attribute values.type()intvendorId()withApiVersion(VulkanVersion value) Copy the current immutable object by setting a value for theapiVersionattribute.withDriverVersion(VulkanVersion value) Copy the current immutable object by setting a value for thedriverVersionattribute.withId(int value) Copy the current immutable object by setting a value for theidattribute.Copy the current immutable object by setting a value for thenameattribute.Copy the current immutable object by setting a value for thetypeattribute.withVendorId(int value) Copy the current immutable object by setting a value for thevendorIdattribute.
-
Method Details
-
name
- Specified by:
namein interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The device name
-
type
- Specified by:
typein interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The device type
-
id
public int id()- Specified by:
idin interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The device ID (unique for a specific vendor)
-
vendorId
public int vendorId()- Specified by:
vendorIdin interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The vendor ID
-
apiVersion
- Specified by:
apiVersionin interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The highest version of Vulkan supported
-
driverVersion
- Specified by:
driverVersionin interfaceVulkanPhysicalDevicePropertiesType- Returns:
- The version of the underlying device driver
-
withName
Copy the current immutable object by setting a value for thenameattribute. An equals check used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for name- Returns:
- A modified copy or the
thisobject
-
withType
Copy the current immutable object by setting a value for thetypeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for type- Returns:
- A modified copy or the
thisobject
-
withId
Copy the current immutable object by setting a value for theidattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for id- Returns:
- A modified copy or the
thisobject
-
withVendorId
Copy the current immutable object by setting a value for thevendorIdattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for vendorId- Returns:
- A modified copy or the
thisobject
-
withApiVersion
Copy the current immutable object by setting a value for theapiVersionattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for apiVersion- Returns:
- A modified copy or the
thisobject
-
withDriverVersion
Copy the current immutable object by setting a value for thedriverVersionattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for driverVersion- Returns:
- A modified copy or the
thisobject
-
equals
-
hashCode
-
toString
-
copyOf
Creates an immutable copy of aVulkanPhysicalDevicePropertiesTypevalue. 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 VulkanPhysicalDeviceProperties instance
-
builder
Creates a builder forVulkanPhysicalDeviceProperties.VulkanPhysicalDeviceProperties.builder() .setName(String) // required
name.setType(com.io7m.jcoronado.api.VulkanPhysicalDevicePropertiesType.Type) // requiredtype.setId(int) // requiredid.setVendorId(int) // requiredvendorId.setApiVersion(com.io7m.jcoronado.api.VulkanVersion) // requiredapiVersion.setDriverVersion(com.io7m.jcoronado.api.VulkanVersion) // requireddriverVersion.build();- Returns:
- A new VulkanPhysicalDeviceProperties builder
-