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

◆ bind_pipeline()

void MayaFlux::Portal::Graphics::RenderFlow::bind_pipeline ( CommandBufferID  cmd_id,
RenderPipelineID  pipeline 
)

Bind graphics pipeline.

Parameters
cmd_idCommand buffer ID
pipelinePipeline ID

Definition at line 647 of file RenderFlow.cpp.

648{
649 auto pipeline_it = m_pipelines.find(pipeline_id);
650 if (pipeline_it == m_pipelines.end()) {
652 "Invalid pipeline ID: {}", pipeline_id);
653 return;
654 }
655
656 auto cmd = m_shader_foundry->get_command_buffer(cmd_id);
657 if (!cmd) {
659 "Invalid command buffer ID: {}", cmd_id);
660 return;
661 }
662
663 pipeline_it->second.pipeline->bind(cmd);
664}
#define MF_ERROR(comp, ctx,...)
std::unordered_map< RenderPipelineID, PipelineState > m_pipelines
vk::CommandBuffer get_command_buffer(CommandBufferID cmd_id)
Get Vulkan command buffer handle from CommandBufferID.
@ Rendering
GPU rendering operations (graphics pipeline, frame rendering)
@ Portal
High-level user-facing API layer.

References MayaFlux::Portal::Graphics::ShaderFoundry::get_command_buffer(), m_pipelines, m_shader_foundry, MF_ERROR, MayaFlux::Journal::Portal, and MayaFlux::Journal::Rendering.

+ Here is the call graph for this function: