Class VulkanComputeWorkGroupSize

  • All Implemented Interfaces:
    VulkanComputeWorkGroupSizeType

    public final class VulkanComputeWorkGroupSize
    extends java.lang.Object
    implements VulkanComputeWorkGroupSizeType
    the maximum size of a local compute workgroup, per dimension. These three values represent the maximum local workgroup size in the X, Y, and Z dimensions, respectively. The x, y, and z sizes specified by the LocalSize execution mode and by the object decorated by the WorkgroupSize decoration in shader modules must be less than or equal to the corresponding limit.
    See Also:
    "VkPhysicalDeviceLimits"
    • Method Detail

      • withMaximumX

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

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

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

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

        public int hashCode()
        Computes a hash code from attributes: maximumX, maximumY, maximumZ.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        hashCode value
      • toString

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

        public static VulkanComputeWorkGroupSize of​(int maximumX,
                                                    int maximumY,
                                                    int maximumZ)
        Construct a new immutable VulkanComputeWorkGroupSize instance.
        Parameters:
        maximumX - The value for the maximumX attribute
        maximumY - The value for the maximumY attribute
        maximumZ - The value for the maximumZ attribute
        Returns:
        An immutable VulkanComputeWorkGroupSize instance