- java.lang.Object
-
- com.io7m.jcoronado.api.VulkanLayerProperties
-
- All Implemented Interfaces:
VulkanLayerPropertiesType
public final class VulkanLayerProperties extends java.lang.Object implements VulkanLayerPropertiesType
A description of a layer.- See Also:
- "VkLayerProperties"
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VulkanLayerProperties.Builder
Builds instances of typeVulkanLayerProperties
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VulkanLayerProperties.Builder
builder()
Creates a builder forVulkanLayerProperties
.static VulkanLayerProperties
copyOf(VulkanLayerPropertiesType instance)
Creates an immutable copy of aVulkanLayerPropertiesType
value.java.lang.String
description()
boolean
equals(java.lang.Object another)
This instance is equal to all instances ofVulkanLayerProperties
that have equal attribute values.int
hashCode()
Computes a hash code from attributes:name
,description
,specificationVersion
,implementationVersion
.int
implementationVersion()
java.lang.String
name()
static VulkanLayerProperties
of(java.lang.String name, java.lang.String description, int specificationVersion, int implementationVersion)
Construct a new immutableVulkanLayerProperties
instance.int
specificationVersion()
java.lang.String
toString()
Prints the immutable valueVulkanLayerProperties
with attribute values.VulkanLayerProperties
withDescription(java.lang.String value)
Copy the current immutable object by setting a value for thedescription
attribute.VulkanLayerProperties
withImplementationVersion(int value)
Copy the current immutable object by setting a value for theimplementationVersion
attribute.VulkanLayerProperties
withName(java.lang.String value)
Copy the current immutable object by setting a value for thename
attribute.VulkanLayerProperties
withSpecificationVersion(int value)
Copy the current immutable object by setting a value for thespecificationVersion
attribute.
-
-
-
Method Detail
-
name
public java.lang.String name()
- Specified by:
name
in interfaceVulkanLayerPropertiesType
- Returns:
- The name of the layer
-
description
public java.lang.String description()
- Specified by:
description
in interfaceVulkanLayerPropertiesType
- Returns:
- A humanly-readable description of the layer
-
specificationVersion
public int specificationVersion()
- Specified by:
specificationVersion
in interfaceVulkanLayerPropertiesType
- Returns:
- The version of the specification defining this layer
-
implementationVersion
public int implementationVersion()
- Specified by:
implementationVersion
in interfaceVulkanLayerPropertiesType
- Returns:
- The version of the layer implementation
-
withName
public final VulkanLayerProperties withName(java.lang.String value)
Copy the current immutable object by setting a value for thename
attribute. An equals check used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for name- Returns:
- A modified copy of the
this
object
-
withDescription
public final VulkanLayerProperties withDescription(java.lang.String value)
Copy the current immutable object by setting a value for thedescription
attribute. An equals check used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for description- Returns:
- A modified copy of the
this
object
-
withSpecificationVersion
public final VulkanLayerProperties withSpecificationVersion(int value)
Copy the current immutable object by setting a value for thespecificationVersion
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for specificationVersion- Returns:
- A modified copy of the
this
object
-
withImplementationVersion
public final VulkanLayerProperties withImplementationVersion(int value)
Copy the current immutable object by setting a value for theimplementationVersion
attribute. A value equality check is used to prevent copying of the same value by returningthis
.- Parameters:
value
- A new value for implementationVersion- Returns:
- A modified copy of the
this
object
-
equals
public boolean equals(java.lang.Object another)
This instance is equal to all instances ofVulkanLayerProperties
that have equal attribute values.- Overrides:
equals
in classjava.lang.Object
- Returns:
true
ifthis
is equal toanother
instance
-
hashCode
public int hashCode()
Computes a hash code from attributes:name
,description
,specificationVersion
,implementationVersion
.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hashCode value
-
toString
public java.lang.String toString()
Prints the immutable valueVulkanLayerProperties
with attribute values.- Overrides:
toString
in classjava.lang.Object
- Returns:
- A string representation of the value
-
of
public static VulkanLayerProperties of(java.lang.String name, java.lang.String description, int specificationVersion, int implementationVersion)
Construct a new immutableVulkanLayerProperties
instance.- Parameters:
name
- The value for thename
attributedescription
- The value for thedescription
attributespecificationVersion
- The value for thespecificationVersion
attributeimplementationVersion
- The value for theimplementationVersion
attribute- Returns:
- An immutable VulkanLayerProperties instance
-
copyOf
public static VulkanLayerProperties copyOf(VulkanLayerPropertiesType instance)
Creates an immutable copy of aVulkanLayerPropertiesType
value. 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 VulkanLayerProperties instance
-
builder
public static VulkanLayerProperties.Builder builder()
Creates a builder forVulkanLayerProperties
.- Returns:
- A new VulkanLayerProperties builder
-
-