|
sandbox
|
Module for managing rendering specific tasks. More...
#include <graphics_module.hpp>
Public Member Functions | |
| auto | update () -> void override |
| auto | instance () -> instance & |
| auto | physical_device () -> physical_device & |
| auto | logical_device () -> logical_device & |
| auto | surface () -> surface & |
| auto | command_pool (VkQueueFlagBits queue_type=VK_QUEUE_GRAPHICS_BIT, const std::thread::id &thread_id=std::this_thread::get_id()) -> const std::shared_ptr< command_pool > & |
| auto | swapchain () -> swapchain & |
|
template<utility::implements< renderer > Renderer, typename... Args> requires (std::is_constructible_v<Renderer, Args...>) | |
| auto | set_renderer (Args &&... args) -> void |
| auto | current_frame () const noexcept -> std::uint32_t |
| auto | attachment (const std::string &name) const -> const descriptor & |
|
template<typename Type , typename... Args> requires (std::is_constructible_v<Type, Args...>) | |
| auto | add_resource (Args &&... args) -> resource_handle< Type > |
| template<typename Type > | |
| auto | get_resource (const resource_handle< Type > &handle) -> Type & |
| template<typename Type > | |
| auto | get_resource (const resource_handle< Type > &handle) const -> const Type & |
| template<typename Type > | |
| auto | remove_resource (const resource_handle< Type > &handle) -> void |
| auto | allocator () const noexcept -> const graphics::allocator & |
|
template<queue::type Source, queue::type Destination, typename Type > requires (std::is_same_v<Type, graphics::buffer> || std::is_same_v<Type, graphics::storage_buffer>) | |
| auto | transfer_ownership (const resource_handle< Type > &handle, const VkPipelineStageFlagBits2 stage=VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT) -> void |
|
template<typename Callable > requires (std::is_invocable_r_v<math::vector2u, Callable>) | |
| auto | set_dynamic_size_callback (Callable &&callback) -> void |
| auto | dynamic_viewport () const -> const math::vector2u & |
| auto | on_viewport_changed () -> signals::signal< const math::vector2u & > & |
| auto | compiler () -> graphics::compiler & |
Public Member Functions inherited from sbx::utility::noncopyable | |
| noncopyable (const noncopyable &)=delete | |
| noncopyable (noncopyable &&) noexcept=default | |
| auto | operator= (const noncopyable &) -> noncopyable &=delete |
| auto | operator= (noncopyable &&) noexcept -> noncopyable &=default |
Additional Inherited Members | |
Protected Types inherited from sbx::core::module< graphics_module > | |
| using | base_type = module_manager::module_base |
| using | dependencies = module_manager::dependencies< Dependencies... > |
| using | stage = module_manager::stage |
Static Protected Member Functions inherited from sbx::core::module< graphics_module > | |
| static auto | register_module (stage stage, dependencies< Dependencies... > &&dependencies={}) -> bool |
Module for managing rendering specific tasks.
sbx::core::module<T>