Class VulkanCopyDescriptorSet

java.lang.Object
com.io7m.jcoronado.api.VulkanCopyDescriptorSet
All Implemented Interfaces:
VulkanCopyDescriptorSetType

public final class VulkanCopyDescriptorSet extends Object implements VulkanCopyDescriptorSetType
See Also:
  • "VkCopyDescriptorSet"
  • Method Details

    • sourceSet

      public VulkanDescriptorSetType sourceSet()
      Specified by:
      sourceSet in interface VulkanCopyDescriptorSetType
      Returns:
      The source set
    • sourceBinding

      public int sourceBinding()
      Specified by:
      sourceBinding in interface VulkanCopyDescriptorSetType
      Returns:
      The source binding
    • sourceArrayElement

      public int sourceArrayElement()
      Specified by:
      sourceArrayElement in interface VulkanCopyDescriptorSetType
      Returns:
      The source array element
    • destinationSet

      public VulkanDescriptorSetType destinationSet()
      Specified by:
      destinationSet in interface VulkanCopyDescriptorSetType
      Returns:
      The destination set
    • destinationBinding

      public int destinationBinding()
      Specified by:
      destinationBinding in interface VulkanCopyDescriptorSetType
      Returns:
      The destination binding
    • destinationArrayElement

      public int destinationArrayElement()
      Specified by:
      destinationArrayElement in interface VulkanCopyDescriptorSetType
      Returns:
      The destination array element
    • descriptorCount

      public int descriptorCount()
      Specified by:
      descriptorCount in interface VulkanCopyDescriptorSetType
      Returns:
      The number of descriptors to copy from the source to destination
    • withSourceSet

      public final VulkanCopyDescriptorSet withSourceSet(VulkanDescriptorSetType value)
      Copy the current immutable object by setting a value for the sourceSet attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for sourceSet
      Returns:
      A modified copy of the this object
    • withSourceBinding

      public final VulkanCopyDescriptorSet withSourceBinding(int value)
      Copy the current immutable object by setting a value for the sourceBinding attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for sourceBinding
      Returns:
      A modified copy of the this object
    • withSourceArrayElement

      public final VulkanCopyDescriptorSet withSourceArrayElement(int value)
      Copy the current immutable object by setting a value for the sourceArrayElement attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for sourceArrayElement
      Returns:
      A modified copy of the this object
    • withDestinationSet

      public final VulkanCopyDescriptorSet withDestinationSet(VulkanDescriptorSetType value)
      Copy the current immutable object by setting a value for the destinationSet attribute. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for destinationSet
      Returns:
      A modified copy of the this object
    • withDestinationBinding

      public final VulkanCopyDescriptorSet withDestinationBinding(int value)
      Copy the current immutable object by setting a value for the destinationBinding attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for destinationBinding
      Returns:
      A modified copy of the this object
    • withDestinationArrayElement

      public final VulkanCopyDescriptorSet withDestinationArrayElement(int value)
      Copy the current immutable object by setting a value for the destinationArrayElement attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for destinationArrayElement
      Returns:
      A modified copy of the this object
    • withDescriptorCount

      public final VulkanCopyDescriptorSet withDescriptorCount(int value)
      Copy the current immutable object by setting a value for the descriptorCount attribute. A value equality check is used to prevent copying of the same value by returning this.
      Parameters:
      value - A new value for descriptorCount
      Returns:
      A modified copy of the this object
    • equals

      public boolean equals(Object another)
      This instance is equal to all instances of VulkanCopyDescriptorSet 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: sourceSet, sourceBinding, sourceArrayElement, destinationSet, destinationBinding, destinationArrayElement, descriptorCount.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

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

      public static VulkanCopyDescriptorSet of(VulkanDescriptorSetType sourceSet, int sourceBinding, int sourceArrayElement, VulkanDescriptorSetType destinationSet, int destinationBinding, int destinationArrayElement, int descriptorCount)
      Construct a new immutable VulkanCopyDescriptorSet instance.
      Parameters:
      sourceSet - The value for the sourceSet attribute
      sourceBinding - The value for the sourceBinding attribute
      sourceArrayElement - The value for the sourceArrayElement attribute
      destinationSet - The value for the destinationSet attribute
      destinationBinding - The value for the destinationBinding attribute
      destinationArrayElement - The value for the destinationArrayElement attribute
      descriptorCount - The value for the descriptorCount attribute
      Returns:
      An immutable VulkanCopyDescriptorSet instance
    • copyOf

      public static VulkanCopyDescriptorSet copyOf(VulkanCopyDescriptorSetType instance)
      Creates an immutable copy of a VulkanCopyDescriptorSetType 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 VulkanCopyDescriptorSet instance
    • builder

      public static VulkanCopyDescriptorSet.Builder builder()
      Creates a builder for VulkanCopyDescriptorSet.
       VulkanCopyDescriptorSet.builder()
          .setSourceSet(com.io7m.jcoronado.api.VulkanDescriptorSetType) // required sourceSet
          .setSourceBinding(int) // required sourceBinding
          .setSourceArrayElement(int) // required sourceArrayElement
          .setDestinationSet(com.io7m.jcoronado.api.VulkanDescriptorSetType) // required destinationSet
          .setDestinationBinding(int) // required destinationBinding
          .setDestinationArrayElement(int) // required destinationArrayElement
          .setDescriptorCount(int) // required descriptorCount
          .build();
       
      Returns:
      A new VulkanCopyDescriptorSet builder