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

◆ free_all_command_buffers()

void MayaFlux::Portal::Graphics::ShaderFoundry::free_all_command_buffers ( )

Free all allocated command buffers.

Definition at line 773 of file ShaderFoundry.cpp.

774{
775 if (!m_backend || !s_initialized) {
776 return;
777 }
778
779 auto& cmd_manager = m_backend->get_command_manager();
780 auto device = get_device();
781 device.waitIdle();
782
783 for (auto& [id, state] : m_command_buffers) {
784 if (state.is_active) {
785 cmd_manager.free_command_buffer(state.cmd);
786 }
787 if (state.timestamp_pool) {
788 device.destroyQueryPool(state.timestamp_pool);
789 }
790 }
791 m_command_buffers.clear();
792
794 "Freed all command buffers");
795}
#define MF_INFO(comp, ctx,...)
std::unordered_map< CommandBufferID, CommandBufferState > m_command_buffers
std::shared_ptr< Core::VulkanBackend > m_backend
@ ShaderCompilation
Shader compilation tasks (Portal::Graphics::ShaderCompiler)
@ Portal
High-level user-facing API layer.

References get_device(), m_backend, m_command_buffers, MF_INFO, MayaFlux::Journal::Portal, s_initialized, and MayaFlux::Journal::ShaderCompilation.

Referenced by shutdown(), and stop().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: