Skip to content

LiteFX::Rendering::Backends::VulkanBackend

Defines a rendering backend that creates a Vulkan device.

Synopsis

Declared in <litefx/backends/vulkan.hpp>

class [[dllimport, dllexport]] VulkanBackend final
    : public RenderBackend<VulkanDevice>
    , public Resource<VkInstance>

Base Classes

NameDescription
RenderBackend<VulkanDevice>Defines a back-end, that provides a device instance for a certain surface and graphics adapter.
Resource<VkInstance>Implements the IResource interface.

Type Aliases

Member Functions

NameDescription
VulkanBackend [constructor]Initializes a new vulkan rendering backend.
~VulkanBackend [destructor] [virtual]Destructor
operator= Assignment operators
adapters [virtual]Lists all available graphics adapters.
createDevice Creates a new graphics device.
createSurface Creates a surface on a window handle.
device Looks up a device and returns a pointer to it, or nullptr, if no device with the provided name could be found.
findAdapter findAdapter overloads
getEnabledValidationLayers Returns the validation layers that are enabled on the backend.
handle [virtual]Returns the resource managed by the class.
name [virtual]Gets the name of the backend.
registerDevice Registers a new device on the backend.
releaseDevice [virtual]Destroys and removes a device from the backend.
type [virtual]Gets the type of the backend.

Static Member Functions

NameDescription
getAvailableInstanceExtensions Returns a list of available extensions.
getInstanceValidationLayers Returns a list of available validation layers.
validateInstanceExtensions Returns true, if all elements of are contained by the a list of available extensions.
validateInstanceLayers Returns true, if all elements of are contained by the a list of available validation layers.

Protected Member Functions

NameDescription
operator= Assignment operators
activate [virtual]Called by the parent App, if the backend is started.
deactivate [virtual]Called by the parent App, if the backend is stopped.
handle [virtual]Returns the resource managed by the class.

Friends

NameDescription
LiteFX::Rendering::Backends::VulkanBackend::VulkanBackendImpl
LiteFX::PimplPtrA smart pointer that manages an implementation instance for a public interface class.