Package icyllis.arc3d.vulkan

# Class VulkanCommandPool

java.lang.Object
icyllis.arc3d.core.RefCnt
icyllis.arc3d.engine.ManagedResource
icyllis.arc3d.vulkan.VulkanCommandPool

All Implemented Interfaces:
  `RefCounted`

public class VulkanCommandPool extends ManagedResource
VkCommandPool is created with a single primary command buffer and (optional) a set of secondary command buffers. After submission, the command pool enters the in flight state, and we will continuously check whether the GPU has finished the work to recycle the VkCommandPool (and its command buffers).

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `check()`
  `static VulkanCommandPool`
  `create(VulkanDevice device)`
  `protected void`
  `deallocate()`
  Override this method to invoke de-allocation of the underlying resource.
  `protected VulkanDevice`
  `getDevice()`
  `boolean`
  `isSubmitted()`
  `void`
  `reset()`
  `boolean`
  `submit()`

  ### Methods inherited from class icyllis.arc3d.core.RefCnt

  `create, create, getRefCnt, getRefCntAcquire, getRefCntVolatile, move, move, ref, unique, unref`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### create

    @Nullable public static VulkanCommandPool create(VulkanDevice device)

  - ### deallocate

    protected void deallocate()
    Description copied from class: `RefCnt`
    Override this method to invoke de-allocation of the underlying resource.
    Specified by:
      `deallocate` in class `RefCnt`

  - ### submit

    public boolean submit()

  - ### check

    public boolean check()

  - ### reset

    public void reset()

  - ### isSubmitted

    public boolean isSubmitted()

  - ### getDevice

    protected VulkanDevice getDevice()
    Overrides:
      `getDevice` in class `ManagedResource`