Class VkAcquireNextImageInfoKHR

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkAcquireNextImageInfoKHR>
org.lwjgl.vulkan.VkAcquireNextImageInfoKHR
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkAcquireNextImageInfoKHR extends org.lwjgl.system.Struct<VkAcquireNextImageInfoKHR> implements org.lwjgl.system.NativeResource
Structure specifying parameters of the acquire.
Description

If AcquireNextImageKHR is used, the device mask is considered to include all physical devices in the logical device.

Note

AcquireNextImage2KHR signals at most one semaphore, even if the application requests waiting for multiple physical devices to be ready via the deviceMask. However, only a single physical device can wait on that semaphore, since the semaphore becomes unsignaled when the wait succeeds. For other physical devices to wait for the image to be ready, it is necessary for the application to submit semaphore signal operation(s) to that first physical device to signal additional semaphore(s) after the wait succeeds, which the other physical device(s) can wait upon.

Valid Usage
  • swapchain must not be in the retired state
  • If semaphore is not NULL_HANDLE, it must be unsignaled
  • If semaphore is not NULL_HANDLE, it must not have any uncompleted signal or wait operations pending
  • If fence is not NULL_HANDLE, fence must be unsignaled
  • If fence is not NULL_HANDLE, fence must not be associated with any other queue command that has not yet completed execution on that queue
  • semaphore and fence must not both be equal to NULL_HANDLE
  • deviceMask must be a valid device mask
  • deviceMask must not be zero
  • semaphore must have a VkSemaphoreType of SEMAPHORE_TYPE_BINARY
Valid Usage (Implicit)
  • sType must be STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR
  • pNext must be NULL
  • swapchain must be a valid VkSwapchainKHR handle
  • If semaphore is not NULL_HANDLE, semaphore must be a valid VkSemaphore handle
  • If fence is not NULL_HANDLE, fence must be a valid VkFence handle
  • Each of fence, semaphore, and swapchain that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the same VkDevice
Host Synchronization
  • Host access to swapchain must be externally synchronized
  • Host access to semaphore must be externally synchronized
  • Host access to fence must be externally synchronized
See Also

AcquireNextImage2KHR

Layout


 struct VkAcquireNextImageInfoKHR {
     VkStructureType sType();
     void const * pNext();
     VkSwapchainKHR swapchain();
     uint64_t timeout();
     VkSemaphore semaphore();
     VkFence fence();
     uint32_t deviceMask();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • STYPE

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • SWAPCHAIN

      public static final int SWAPCHAIN
      The struct member offsets.
    • TIMEOUT

      public static final int TIMEOUT
      The struct member offsets.
    • SEMAPHORE

      public static final int SEMAPHORE
      The struct member offsets.
    • FENCE

      public static final int FENCE
      The struct member offsets.
    • DEVICEMASK

      public static final int DEVICEMASK
      The struct member offsets.
  • Constructor Details

    • VkAcquireNextImageInfoKHR

      public VkAcquireNextImageInfoKHR(ByteBuffer container)
      Creates a VkAcquireNextImageInfoKHR instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

      The created instance holds a strong reference to the container object.

  • Method Details