Class VulkanPresentInfoKHR

java.lang.Object
com.io7m.jcoronado.extensions.khr_swapchain.api.VulkanPresentInfoKHR
All Implemented Interfaces:
VulkanPresentInfoKHRType

public final class VulkanPresentInfoKHR extends Object implements VulkanPresentInfoKHRType
See Also:
  • "VkPresentInfoKHR"
  • "VkSwapchainPresentFenceInfoEXT"
  • Method Details

    • waitSemaphores

      public List<VulkanSemaphoreBinaryType> waitSemaphores()
      Specified by:
      waitSemaphores in interface VulkanPresentInfoKHRType
      Returns:
      The semaphores upon which to wait before issuing the present request.
    • swapChains

      Specified by:
      swapChains in interface VulkanPresentInfoKHRType
      Returns:
      The list of swapchains
    • imageIndices

      public List<Integer> imageIndices()
      Each entry in this array identifies the image to present on the corresponding entry in the swapChains() list.
      Specified by:
      imageIndices in interface VulkanPresentInfoKHRType
      Returns:
      An array of images to be presented
    • fences

      public List<VulkanFenceType> fences()
      Specified by:
      fences in interface VulkanPresentInfoKHRType
      Returns:
      The list of fences that will be signalled when presentation is done
    • withWaitSemaphores

      public final VulkanPresentInfoKHR withWaitSemaphores(VulkanSemaphoreBinaryType... elements)
      Copy the current immutable object with elements that replace the content of waitSemaphores.
      Parameters:
      elements - The elements to set
      Returns:
      A modified copy of this object
    • withWaitSemaphores

      public final VulkanPresentInfoKHR withWaitSemaphores(Iterable<? extends VulkanSemaphoreBinaryType> elements)
      Copy the current immutable object with elements that replace the content of waitSemaphores. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      elements - An iterable of waitSemaphores elements to set
      Returns:
      A modified copy or this if not changed
    • withSwapChains

      Copy the current immutable object with elements that replace the content of swapChains.
      Parameters:
      elements - The elements to set
      Returns:
      A modified copy of this object
    • withSwapChains

      public final VulkanPresentInfoKHR withSwapChains(Iterable<? extends VulkanExtKHRSwapChainType.VulkanKHRSwapChainType> elements)
      Copy the current immutable object with elements that replace the content of swapChains. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      elements - An iterable of swapChains elements to set
      Returns:
      A modified copy or this if not changed
    • withImageIndices

      public final VulkanPresentInfoKHR withImageIndices(int... elements)
      Copy the current immutable object with elements that replace the content of imageIndices.
      Parameters:
      elements - The elements to set
      Returns:
      A modified copy of this object
    • withImageIndices

      public final VulkanPresentInfoKHR withImageIndices(Iterable<Integer> elements)
      Copy the current immutable object with elements that replace the content of imageIndices. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      elements - An iterable of imageIndices elements to set
      Returns:
      A modified copy or this if not changed
    • withFences

      public final VulkanPresentInfoKHR withFences(VulkanFenceType... elements)
      Copy the current immutable object with elements that replace the content of fences.
      Parameters:
      elements - The elements to set
      Returns:
      A modified copy of this object
    • withFences

      public final VulkanPresentInfoKHR withFences(Iterable<? extends VulkanFenceType> elements)
      Copy the current immutable object with elements that replace the content of fences. A shallow reference equality check is used to prevent copying of the same value by returning this.
      Parameters:
      elements - An iterable of fences elements to set
      Returns:
      A modified copy or this if not changed
    • equals

      public boolean equals(Object another)
      This instance is equal to all instances of VulkanPresentInfoKHR 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: waitSemaphores, swapChains, imageIndices, fences.
      Overrides:
      hashCode in class Object
      Returns:
      hashCode value
    • toString

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

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

      public static VulkanPresentInfoKHR.Builder builder()
      Creates a builder for VulkanPresentInfoKHR.
      VulkanPresentInfoKHR.builder()
         .addWaitSemaphores|addAllWaitSemaphores(com.io7m.jcoronado.api.VulkanSemaphoreBinaryType) // waitSemaphores elements
         .addSwapChains|addAllSwapChains(com.io7m.jcoronado.extensions.khr_swapchain.api.VulkanExtKHRSwapChainType.VulkanKHRSwapChainType) // swapChains elements
         .addImageIndices|addAllImageIndices(int) // imageIndices elements
         .addFences|addAllFences(com.io7m.jcoronado.api.VulkanFenceType) // fences elements
         .build();
      
      Returns:
      A new VulkanPresentInfoKHR builder