Skip to content

LiteFX::Rendering::RenderBackend

Defines a back-end, that provides a device instance for a certain surface and graphics adapter.

Synopsis

Declared in <litefx/rendering.hpp>

template<typename TGraphicsDevice>
requires meta::implements<TGraphicsDevice, GraphicsDevice<typename TGraphicsDevice::factory_type, typename TGraphicsDevice::surface_type, typename TGraphicsDevice::adapter_type, typename TGraphicsDevice::swap_chain_type, typename TGraphicsDevice::command_queue_type, typename TGraphicsDevice::render_pass_type, typename TGraphicsDevice::render_pipeline_type, typename TGraphicsDevice::compute_pipeline_type, typename TGraphicsDevice::ray_tracing_pipeline_type, typename TGraphicsDevice::barrier_type>>
class RenderBackend
    : public IRenderBackend

Base Classes

NameDescription
IRenderBackendThe interface to access a render backend.

Type Aliases

Member Functions

NameDescription
~RenderBackend [destructor] [virtual]Destructor
adapters [virtual]Lists all available graphics adapters.
createDevice Creates a new graphics device.
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
listAdapters Lists all available graphics adapters.
name [virtual]Gets the name of the backend.
operator[] Looks up a device and returns a pointer to it, or nullptr, if no device with the provided name could be found.
registerDevice [virtual]Registers a new device on the backend.
releaseDevice [virtual]Destroys and removes a device from the backend.
state Returns the state of the backend.
type [virtual]Gets the type of the backend.

Protected Member Functions

NameDescription
RenderBackend [constructor]Constructors
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.
state Returns the state of the backend.

Template Parameters

NameDescription
TGraphicsDeviceThe type of the graphics device. Must implement GraphicsDevice.

Derived Classes

NameDescription
DirectX12Backend Implements the DirectX 12 RenderBackend.
VulkanBackend Defines a rendering backend that creates a Vulkan device.