Package icyllis.arc3d.vulkan

# Class VulkanBackendContext

java.lang.Object
icyllis.arc3d.vulkan.VulkanBackendContext

public final class VulkanBackendContext extends Object
The `VulkanBackendContext` contains all the base Vulkan objects needed by the `VulkanDevice`. The assumption is that the client will set these up and pass them to the `VulkanDevice` constructor. The `VulkanDevice` created must support at least one graphics queue, which is passed in as well. The QueueFamilyIndex must match the family of the given queue. It is needed for CommandPool creation, and any BackendObjects handed to us (e.g., for wrapped textures) needs to be created in or transitioned to that family. The refs held by members of this struct must be released (either by deleting the struct or manually releasing the refs) before the underlying Vulkan device and instance are destroyed.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `org.lwjgl.vulkan.VkDevice`
  `mDevice`
  `org.lwjgl.vulkan.VkPhysicalDeviceFeatures`
  `mDeviceFeatures`
  `org.lwjgl.vulkan.VkPhysicalDeviceFeatures2`
  `mDeviceFeatures2`
  `int`
  `mGraphicsQueueIndex`
  `org.lwjgl.vulkan.VkInstance`
  `mInstance`
  `int`
  `mMaxAPIVersion`
  `VulkanMemoryAllocator`
  `mMemoryAllocator`
  `org.lwjgl.vulkan.VkPhysicalDevice`
  `mPhysicalDevice`
  `boolean`
  `mProtectedContext`
  `org.lwjgl.vulkan.VkQueue`
  `mQueue`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `VulkanBackendContext()`

- ## Method Summary

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

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

- ## Field Details

  - ### mInstance

    public org.lwjgl.vulkan.VkInstance mInstance

  - ### mPhysicalDevice

    public org.lwjgl.vulkan.VkPhysicalDevice mPhysicalDevice

  - ### mDevice

    public org.lwjgl.vulkan.VkDevice mDevice

  - ### mQueue

    public org.lwjgl.vulkan.VkQueue mQueue

  - ### mGraphicsQueueIndex

    public int mGraphicsQueueIndex

  - ### mMaxAPIVersion

    public int mMaxAPIVersion

  - ### mDeviceFeatures

    public org.lwjgl.vulkan.VkPhysicalDeviceFeatures mDeviceFeatures

  - ### mDeviceFeatures2

    public org.lwjgl.vulkan.VkPhysicalDeviceFeatures2 mDeviceFeatures2

  - ### mMemoryAllocator

    public VulkanMemoryAllocator mMemoryAllocator

  - ### mProtectedContext

    public boolean mProtectedContext

- ## Constructor Details

  - ### VulkanBackendContext

    public VulkanBackendContext()