sandbox
Loading...
Searching...
No Matches
sbx::graphics::draw_list Class Referenceabstract
Inheritance diagram for sbx::graphics::draw_list:
sbx::models::basic_material_draw_list< Traits >

Public Types

using storage_buffer_container = std::unordered_map< std::size_t, storage_buffer_handle >
 
using draw_command_range_container = std::unordered_map< math::uuid, draw_command_range >
 

Public Member Functions

virtual auto update () -> void=0
 
auto buffers () const noexcept -> const storage_buffer_container &
 
auto buffer (const utility::hashed_string &name) const -> const storage_buffer &
 
auto images () const noexcept -> const separate_image2d_array &
 
auto sampler () const noexcept -> const separate_sampler &
 
auto draw_ranges (const utility::hashed_string &name) const noexcept -> const draw_command_range_container &
 
auto draw_ranges (const std::size_t hash) const noexcept -> const draw_command_range_container &
 
auto clear () -> void
 
auto create_buffer (const utility::hashed_string &name, VkDeviceSize size, VkBufferUsageFlags additional_usage=0) -> void
 
template<typename Type >
auto update_buffer (const std::vector< Type > &buffer, const utility::hashed_string &name) -> void
 

Protected Member Functions

auto get_buffer (const utility::hashed_string &name) -> storage_buffer &
 
auto get_buffer (const utility::hashed_string &name) const -> const storage_buffer &
 
auto add_image (const image2d_handle &handle) -> std::uint32_t
 
auto push_draw_command_range (const utility::hashed_string &name, const math::uuid &id, const draw_command_range &range) -> void
 
auto push_draw_command_range (const std::size_t hash, const math::uuid &id, const draw_command_range &range) -> void
 

The documentation for this class was generated from the following files: