Class VulkanWriteDescriptorSet

    • Method Detail

      • destinationArrayElement

        public int destinationArrayElement()
        Specified by:
        destinationArrayElement in interface VulkanWriteDescriptorSetType
        Returns:
        The starting element in that array. If the descriptor binding identified by destinationSet and destinationBinding has a descriptor type of VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then destinationArrayElement specifies the starting byte offset within the binding.
      • descriptorCount

        public int descriptorCount()
        Specified by:
        descriptorCount in interface VulkanWriteDescriptorSetType
        Returns:
        The number of descriptors to update (the number of elements in imageInfos, bufferInfos, or texelBufferViews , or a value matching the dataSize member of an instance of VkWriteDescriptorSetInlineUniformBlockEXT in the pNext chain , or a value matching the accelerationStructureCount of an instance of VkWriteDescriptorSetAccelerationStructureNV in the pNext chain ). If the descriptor binding identified by destinationSet and destinationBinding has a descriptor type of VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT then descriptorCount specifies the number of bytes to update.
      • descriptorType

        public VulkanDescriptorType descriptorType()
        Specified by:
        descriptorType in interface VulkanWriteDescriptorSetType
        Returns:
        A VkDescriptorType specifying the type of each descriptor in imageInfos, bufferInfos, or texelBufferViews, as described below. It must be the same type as that specified in VkDescriptorSetLayoutBinding for destinationSet at destinationBinding. The type of the descriptor also controls which array the descriptors are taken from.
      • withDestinationSet

        public final VulkanWriteDescriptorSet 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 VulkanWriteDescriptorSet 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 VulkanWriteDescriptorSet 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 VulkanWriteDescriptorSet 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
      • withDescriptorType

        public final VulkanWriteDescriptorSet withDescriptorType​(VulkanDescriptorType value)
        Copy the current immutable object by setting a value for the descriptorType attribute. A value equality check is used to prevent copying of the same value by returning this.
        Parameters:
        value - A new value for descriptorType
        Returns:
        A modified copy of the this object
      • withImageInfos

        public final VulkanWriteDescriptorSet withImageInfos​(java.lang.Iterable<? extends VulkanDescriptorImageInfo> elements)
        Copy the current immutable object with elements that replace the content of imageInfos. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        elements - An iterable of imageInfos elements to set
        Returns:
        A modified copy of this object
      • withBufferInfos

        public final VulkanWriteDescriptorSet withBufferInfos​(java.lang.Iterable<? extends VulkanDescriptorBufferInfo> elements)
        Copy the current immutable object with elements that replace the content of bufferInfos. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        elements - An iterable of bufferInfos elements to set
        Returns:
        A modified copy of this object
      • withTexelBufferViews

        public final VulkanWriteDescriptorSet withTexelBufferViews​(java.lang.Iterable<? extends VulkanBufferViewType> elements)
        Copy the current immutable object with elements that replace the content of texelBufferViews. A shallow reference equality check is used to prevent copying of the same value by returning this.
        Parameters:
        elements - An iterable of texelBufferViews elements to set
        Returns:
        A modified copy of this object
      • equals

        public boolean equals​(java.lang.Object another)
        This instance is equal to all instances of VulkanWriteDescriptorSet 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: destinationSet, destinationBinding, destinationArrayElement, descriptorCount, descriptorType, imageInfos, bufferInfos, texelBufferViews.
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        hashCode value
      • toString

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

        public static VulkanWriteDescriptorSet of​(VulkanDescriptorSetType destinationSet,
                                                  int destinationBinding,
                                                  int destinationArrayElement,
                                                  int descriptorCount,
                                                  VulkanDescriptorType descriptorType,
                                                  java.util.List<VulkanDescriptorImageInfo> imageInfos,
                                                  java.util.List<VulkanDescriptorBufferInfo> bufferInfos,
                                                  java.util.List<VulkanBufferViewType> texelBufferViews)
        Construct a new immutable VulkanWriteDescriptorSet instance.
        Parameters:
        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
        descriptorType - The value for the descriptorType attribute
        imageInfos - The value for the imageInfos attribute
        bufferInfos - The value for the bufferInfos attribute
        texelBufferViews - The value for the texelBufferViews attribute
        Returns:
        An immutable VulkanWriteDescriptorSet instance
      • of

        public static VulkanWriteDescriptorSet of​(VulkanDescriptorSetType destinationSet,
                                                  int destinationBinding,
                                                  int destinationArrayElement,
                                                  int descriptorCount,
                                                  VulkanDescriptorType descriptorType,
                                                  java.lang.Iterable<? extends VulkanDescriptorImageInfo> imageInfos,
                                                  java.lang.Iterable<? extends VulkanDescriptorBufferInfo> bufferInfos,
                                                  java.lang.Iterable<? extends VulkanBufferViewType> texelBufferViews)
        Construct a new immutable VulkanWriteDescriptorSet instance.
        Parameters:
        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
        descriptorType - The value for the descriptorType attribute
        imageInfos - The value for the imageInfos attribute
        bufferInfos - The value for the bufferInfos attribute
        texelBufferViews - The value for the texelBufferViews attribute
        Returns:
        An immutable VulkanWriteDescriptorSet instance
      • copyOf

        public static VulkanWriteDescriptorSet copyOf​(VulkanWriteDescriptorSetType instance)
        Creates an immutable copy of a VulkanWriteDescriptorSetType 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 VulkanWriteDescriptorSet instance