Defines a back-end, that provides a device instance for a certain surface and graphics adapter.
More...
|
using | device_type = GraphicsDeviceType |
|
using | surface_type = typename device_type::surface_type |
|
using | adapter_type = typename device_type::adapter_type |
|
using | swap_chain_type = typename device_type::swap_chain_type |
|
using | command_queue_type = typename device_type::command_queue_type |
|
using | command_buffer_type = typename device_type::command_buffer_type |
|
using | frame_buffer_type = typename device_type::frame_buffer_type |
|
using | render_pass_type = typename device_type::render_pass_type |
|
using | pipeline_layout_type = typename device_type::pipeline_layout_type |
|
using | render_pipeline_type = typename device_type::render_pipeline_type |
|
using | shader_program_type = typename device_type::shader_program_type |
|
using | input_assembler_type = typename device_type::input_assembler_type |
|
using | rasterizer_type = typename device_type::rasterizer_type |
|
|
virtual std::vector< const adapter_type * > | adapters () const noexcept=0 |
|
const adapter_type * | findAdapter (const std::optional< lib::Uuid > &id=std::nullopt) const override=0 |
| Finds a graphics adapter by unique id.
|
|
device_type * | device (const std::string &name) noexcept override=0 |
| Searches for a graphics device by name.
|
|
const device_type * | device (const std::string &name) const noexcept override=0 |
| Searches for a graphics device by name.
|
|
virtual void | registerDevice (std::string name, std::unique_ptr< device_type > &&device)=0 |
| Registers a new graphics device.
|
|
virtual void | releaseDevice (const std::string &name)=0 |
| Unregisters a graphics device.
|
|
template<typename Self , typename... Args> |
device_type * | createDevice (std::string name, const adapter_type &adapter, std::unique_ptr< surface_type > &&surface, Args &&... args) |
| Creates a new graphics device.
|
|
BackendType | type () const noexcept override |
| Gets the type of the backend.
|
|
std::vector< const IGraphicsAdapter * > | adapters () const noexcept |
| Lists all available graphics adapters.
|
|
template<typename GraphicsDeviceType>
class spark::render::RenderBackend< GraphicsDeviceType >
Defines a back-end, that provides a device instance for a certain surface and graphics adapter.
- Template Parameters
-
GraphicsDeviceType | The type of the graphics device. (inherits from IGraphicsDevice) |