Class VulkanFormatProperties
java.lang.Object
com.io7m.jcoronado.api.VulkanFormatProperties
- All Implemented Interfaces:
VulkanFormatPropertiesType
Structure specifying image format properties.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanFormatProperties. -
Method Summary
Modifier and TypeMethodDescriptionbuilder()Creates a builder forVulkanFormatProperties.static VulkanFormatPropertiescopyOf(VulkanFormatPropertiesType instance) Creates an immutable copy of aVulkanFormatPropertiesTypevalue.booleanThis instance is equal to all instances ofVulkanFormatPropertiesthat have equal attribute values.inthashCode()Computes a hash code from attributes:linearTilingFeatures,optimalTilingFeatures,bufferFeatures.toString()Prints the immutable valueVulkanFormatPropertieswith attribute values.final VulkanFormatPropertieswithBufferFeatures(VulkanFormatFeatureFlag... elements) Copy the current immutable object with elements that replace the content ofbufferFeatures.final VulkanFormatPropertieswithBufferFeatures(Iterable<VulkanFormatFeatureFlag> elements) Copy the current immutable object with elements that replace the content ofbufferFeatures.final VulkanFormatPropertieswithLinearTilingFeatures(VulkanFormatFeatureFlag... elements) Copy the current immutable object with elements that replace the content oflinearTilingFeatures.final VulkanFormatPropertiesCopy the current immutable object with elements that replace the content oflinearTilingFeatures.final VulkanFormatPropertieswithOptimalTilingFeatures(VulkanFormatFeatureFlag... elements) Copy the current immutable object with elements that replace the content ofoptimalTilingFeatures.final VulkanFormatPropertiesCopy the current immutable object with elements that replace the content ofoptimalTilingFeatures.
-
Method Details
-
linearTilingFeatures
- Specified by:
linearTilingFeaturesin interfaceVulkanFormatPropertiesType- Returns:
- A set of flags specifying features supported by images created with a tiling parameter of VK_IMAGE_TILING_LINEAR.
-
optimalTilingFeatures
- Specified by:
optimalTilingFeaturesin interfaceVulkanFormatPropertiesType- Returns:
- A set of flags specifying features supported by images created with a tiling parameter of VK_IMAGE_TILING_OPTIMAL.
-
bufferFeatures
- Specified by:
bufferFeaturesin interfaceVulkanFormatPropertiesType- Returns:
- A set of flags specifying features supported by buffers.
-
withLinearTilingFeatures
Copy the current immutable object with elements that replace the content oflinearTilingFeatures.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withLinearTilingFeatures
public final VulkanFormatProperties withLinearTilingFeatures(Iterable<VulkanFormatFeatureFlag> elements) Copy the current immutable object with elements that replace the content oflinearTilingFeatures. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of linearTilingFeatures elements to set- Returns:
- A modified copy or
thisif not changed
-
withOptimalTilingFeatures
Copy the current immutable object with elements that replace the content ofoptimalTilingFeatures.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withOptimalTilingFeatures
public final VulkanFormatProperties withOptimalTilingFeatures(Iterable<VulkanFormatFeatureFlag> elements) Copy the current immutable object with elements that replace the content ofoptimalTilingFeatures. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of optimalTilingFeatures elements to set- Returns:
- A modified copy or
thisif not changed
-
withBufferFeatures
Copy the current immutable object with elements that replace the content ofbufferFeatures.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withBufferFeatures
Copy the current immutable object with elements that replace the content ofbufferFeatures. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of bufferFeatures elements to set- Returns:
- A modified copy or
thisif not changed
-
equals
-
hashCode
-
toString
-
copyOf
Creates an immutable copy of aVulkanFormatPropertiesTypevalue. 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 VulkanFormatProperties instance
-
builder
Creates a builder forVulkanFormatProperties.VulkanFormatProperties.builder() .addLinearTilingFeatures|addAllLinearTilingFeatures(com.io7m.jcoronado.api.VulkanFormatFeatureFlag) //
linearTilingFeatureselements .addOptimalTilingFeatures|addAllOptimalTilingFeatures(com.io7m.jcoronado.api.VulkanFormatFeatureFlag) //optimalTilingFeatureselements .addBufferFeatures|addAllBufferFeatures(com.io7m.jcoronado.api.VulkanFormatFeatureFlag) //bufferFeatureselements .build();- Returns:
- A new VulkanFormatProperties builder
-