# Class VulkanLWJGLQueue

java.lang.Object
com.io7m.jcoronado.lwjgl.internal.VulkanLWJGLQueue

All Implemented Interfaces:
  `VulkanHandleDispatchableType, VulkanHandleType, VulkanQueueType, com.io7m.jmulticlose.core.CloseableType, AutoCloseable`

public final class VulkanLWJGLQueue extends Object implements VulkanQueueType
LWJGL `VkQueue`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected final void`
  `checkNotClosed()`
  `final void`
  `close()`
  Destroy the object.
  `protected void`
  `closeActual()`
  `final boolean`
  `equals(Object o)`
  `final long`
  `handle()`
  `final int`
  `hashCode()`
  `final VulkanLWJGLHostAllocatorProxy`
  `hostAllocatorProxy()`
  `final boolean`
  `isClosed()`
  `protected org.slf4j.Logger`
  `logger()`
  `VulkanQueueFamilyProperties`
  `queueFamilyProperties()`
  `VulkanQueueIndex`
  `queueIndex()`
  `org.lwjgl.vulkan.VkQueue`
  `rawQueue()`
  `void`
  `setName(String inName)`
  Set the object name for debugging.
  `void`
  `submit(List<VulkanSubmitInfo> submissions, Optional<VulkanFenceType> fence)`
  Submit the given list of queue submissions.
  `final String`
  `toString()`
  `void`
  `waitIdle()`
  Wait until all items in the given queue have finished executing.

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface com.io7m.jmulticlose.core.CloseableType

  `isClosed`

  ### Methods inherited from interface VulkanHandleType

  `close`

  ### Methods inherited from interface VulkanQueueType

  `queueFamilyIndex, submit`

- ## Method Details

  - ### rawQueue

    public org.lwjgl.vulkan.VkQueue rawQueue()
    Returns:
      The underlying Vulkan queue

  - ### logger

    protected org.slf4j.Logger logger()

  - ### closeActual

    protected void closeActual()

  - ### queueFamilyProperties

    public VulkanQueueFamilyProperties queueFamilyProperties()
    Specified by:
      `queueFamilyProperties` in interface `VulkanQueueType`
    Returns:
      The properties for the queue family to which this queue belongs

  - ### queueIndex

    public VulkanQueueIndex queueIndex()
    Specified by:
      `queueIndex` in interface `VulkanQueueType`
    Returns:
      The index of the queue within the queue family to which it belongs

  - ### submit

    public void submit(List<VulkanSubmitInfo> submissions, Optional<VulkanFenceType> fence) throws VulkanException
    Description copied from interface: `VulkanQueueType`
    Submit the given list of queue submissions. If a fence is provided, the fence is signalled when all of the command buffers have finished executing.
    Specified by:
      `submit` in interface `VulkanQueueType`
    Parameters:
      `submissions` - The queue submissions
      `fence` - A fence
    Throws:
      `VulkanException` - On errors

  - ### waitIdle

    public void waitIdle() throws VulkanException
    Description copied from interface: `VulkanQueueType`
    Wait until all items in the given queue have finished executing.
    Specified by:
      `waitIdle` in interface `VulkanQueueType`
    Throws:
      `VulkanException` - On errors

  - ### hostAllocatorProxy

    public final VulkanLWJGLHostAllocatorProxy hostAllocatorProxy()
    Returns:
      The underlying host allocator proxy

  - ### isClosed

    public final boolean isClosed()
    Specified by:
      `isClosed` in interface `com.io7m.jmulticlose.core.CloseableType`

  - ### close

    public final void close()
    Description copied from interface: `VulkanHandleType`
    Destroy the object.
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `VulkanHandleType`

  - ### equals

    public final boolean equals(Object o)
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public final int hashCode()
    Overrides:
      `hashCode` in class `Object`

  - ### toString

    public final String toString()
    Overrides:
      `toString` in class `Object`

  - ### handle

    public final long handle()
    Returns:
      The raw handle

  - ### checkNotClosed

    protected final void checkNotClosed() throws VulkanDestroyedException
    Throws:
      `VulkanDestroyedException`

  - ### setName

    public void setName(String inName)
    Set the object name for debugging.
    Parameters:
      `inName` - The name