Class VulkanPhysicalDeviceFeatures

java.lang.Object
com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures
All Implemented Interfaces:
VulkanPhysicalDeviceFeaturesType

public final class VulkanPhysicalDeviceFeatures extends Object implements VulkanPhysicalDeviceFeaturesType
The features supported by a physical device.
See Also:
  • "VkPhysicalDeviceFeatures"
  • Method Details

    • features10

      public VulkanPhysicalDeviceFeatures10 features10()
      Specified by:
      features10 in interface VulkanPhysicalDeviceFeaturesType
      Returns:
      The features supported by a physical Vulkan 1.0 device.
      See Also:
      • "VkPhysicalDeviceVulkan11Features"
    • features11

      public VulkanPhysicalDeviceFeatures11 features11()
      Specified by:
      features11 in interface VulkanPhysicalDeviceFeaturesType
      Returns:
      The features supported by a physical Vulkan 1.1 device.
      See Also:
      • "VkPhysicalDeviceVulkan11Features"
    • features12

      public VulkanPhysicalDeviceFeatures12 features12()
      Specified by:
      features12 in interface VulkanPhysicalDeviceFeaturesType
      Returns:
      The features supported by a physical Vulkan 1.2 device.
      See Also:
      • "VkPhysicalDeviceVulkan12Features"
    • features13

      public VulkanPhysicalDeviceFeatures13 features13()
      Specified by:
      features13 in interface VulkanPhysicalDeviceFeaturesType
      Returns:
      The features supported by a physical Vulkan 1.3 device.
      See Also:
      • "VkPhysicalDeviceVulkan13Features"
    • features14

      public VulkanPhysicalDeviceFeatures14 features14()
      Specified by:
      features14 in interface VulkanPhysicalDeviceFeaturesType
      Returns:
      The features supported by a physical Vulkan 1.4 device.
      See Also:
      • "VkPhysicalDeviceVulkan14Features"
    • withFeatures10

      public final VulkanPhysicalDeviceFeatures withFeatures10(VulkanPhysicalDeviceFeatures10 value)
      Copy the current immutable object by setting a value for the features10 attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for features10
      Returns:
      A modified copy or the this object
    • withFeatures11

      public final VulkanPhysicalDeviceFeatures withFeatures11(VulkanPhysicalDeviceFeatures11 value)
      Copy the current immutable object by setting a value for the features11 attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for features11
      Returns:
      A modified copy or the this object
    • withFeatures12

      public final VulkanPhysicalDeviceFeatures withFeatures12(VulkanPhysicalDeviceFeatures12 value)
      Copy the current immutable object by setting a value for the features12 attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for features12
      Returns:
      A modified copy or the this object
    • withFeatures13

      public final VulkanPhysicalDeviceFeatures withFeatures13(VulkanPhysicalDeviceFeatures13 value)
      Copy the current immutable object by setting a value for the features13 attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for features13
      Returns:
      A modified copy or the this object
    • withFeatures14

      public final VulkanPhysicalDeviceFeatures withFeatures14(VulkanPhysicalDeviceFeatures14 value)
      Copy the current immutable object by setting a value for the features14 attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for features14
      Returns:
      A modified copy or the this object
    • equals

      public boolean equals(Object another)
      This instance is equal to all instances of VulkanPhysicalDeviceFeatures that have equal attribute values.
      Overrides:
      equals in class Object
      Returns:
      true if this is equal to another instance
    • hashCode

      public int hashCode()
      Computes a hash code from attributes: features10, features11, features12, features13, features14.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

      public String toString()
      Prints the immutable value VulkanPhysicalDeviceFeatures with attribute values.
      Overrides:
      toString in class Object
      Returns:
      A string representation of the value
    • copyOf

      Creates an immutable copy of a VulkanPhysicalDeviceFeaturesType 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 VulkanPhysicalDeviceFeatures instance
    • builder

      public static VulkanPhysicalDeviceFeatures.Builder builder()
      Creates a builder for VulkanPhysicalDeviceFeatures.
      VulkanPhysicalDeviceFeatures.builder()
         .setFeatures10(com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures10) // optional features10
         .setFeatures11(com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures11) // optional features11
         .setFeatures12(com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures12) // optional features12
         .setFeatures13(com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures13) // optional features13
         .setFeatures14(com.io7m.jcoronado.api.VulkanPhysicalDeviceFeatures14) // optional features14
         .build();
      
      Returns:
      A new VulkanPhysicalDeviceFeatures builder