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

◆ collect_retired_pipelines()

void MayaFlux::Buffers::RenderProcessor::collect_retired_pipelines ( )
private

Destroy retired pipelines whose window has completed every frame submitted before retirement.

Never blocks. Without a completion signal, retired pipelines live until cleanup().

Definition at line 798 of file RenderProcessor.cpp.

799{
801 return;
802 }
803
805
806 std::erase_if(m_retired, [&](const RetiredPipeline& retired) {
807 if (retired.after_frame > m_display_service->get_completed_frame_count(retired.window)) {
808 return false;
809 }
810 flow.destroy_pipeline(retired.pipeline);
811 return true;
812 });
813}
Registry::Service::DisplayService * m_display_service
std::vector< RetiredPipeline > m_retired
MAYAFLUX_API RenderFlow & get_render_flow()
Get the global render flow instance.
std::function< uint64_t(const std::shared_ptr< void > &)> get_completed_frame_count
Submitted frames of a window whose GPU work has finished.

References MayaFlux::Buffers::RenderProcessor::RetiredPipeline::after_frame, MayaFlux::Portal::Graphics::get_render_flow(), MayaFlux::Buffers::RenderProcessor::RetiredPipeline::pipeline, and MayaFlux::Buffers::RenderProcessor::RetiredPipeline::window.

+ Here is the call graph for this function: