MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ create_buffer()

std::shared_ptr< Buffers::FormaBuffer > MayaFlux::Portal::Forma::internal::Atelier::create_buffer ( std::shared_ptr< Core::Window window,
size_t  capacity,
Graphics::PrimitiveTopology  topology,
const std::string &  texture_binding = {},
std::vector< std::pair< std::string, std::shared_ptr< Core::VKImage > > >  additional_textures = {} 
)

Capacity-explicit FormaBuffer construction.

The single buffer construction path. Registers with the stored BufferManager under GRAPHICS_BACKEND and calls setup_rendering with whichever texture configuration was requested.

Definition at line 108 of file Atelier.cpp.

114{
115 auto buf = std::make_shared<Buffers::FormaBuffer>(capacity, topology);
117
118 if (!additional_textures.empty()) {
119 buf->setup_rendering({
120 .target_window = std::move(window),
121 .additional_textures = std::move(additional_textures),
122 });
123 } else if (!texture_binding.empty()) {
124 buf->setup_rendering({
125 .target_window = std::move(window),
126 .default_texture_binding = texture_binding,
127 });
128 } else {
129 buf->setup_rendering({ .target_window = std::move(window) });
130 }
131
132 return buf;
133}
std::shared_ptr< Buffers::BufferManager > m_buffer_manager
Definition Atelier.hpp:215
@ GRAPHICS_BACKEND
Standard graphics processing backend configuration.

References MayaFlux::Buffers::GRAPHICS_BACKEND, and m_buffer_manager.

Referenced by MayaFlux::Portal::Forma::create_buffer(), MayaFlux::Portal::Forma::create_buffer(), MayaFlux::Portal::Forma::create_buffer(), MayaFlux::Portal::Forma::create_buffer(), place_adornments(), and MayaFlux::Portal::Forma::plot().

+ Here is the caller graph for this function: