Get additional live render processors attached through the chain.
377{
378 std::vector<std::shared_ptr<RenderProcessor>> render_processors;
380
381 auto add_processor = [&render_processors, &primary](
const std::shared_ptr<BufferProcessor>& processor) {
382 auto render = std::dynamic_pointer_cast<RenderProcessor>(processor);
383 if (!render || render == primary
384 || std::ranges::find(render_processors, render) != render_processors.end()) {
385 return;
386 }
387 render_processors.push_back(std::move(render));
388 };
389
391
393 auto buffer = shared_from_this();
396
400 }
401
402 return render_processors;
403}
std::shared_ptr< NetworkGeometryBuffer > buffer
std::shared_ptr< Buffers::BufferProcessingChain > m_processing_chain
virtual std::shared_ptr< RenderProcessor > get_render_processor() const
Get a RenderProcessor suitable for rendering this buffer.
std::shared_ptr< Buffers::BufferProcessor > m_default_processor
void add_processor(const std::shared_ptr< Buffers::BufferProcessor > &processor, const std::shared_ptr< Buffers::Buffer > &buffer, Buffers::ProcessingToken token)
Adds a processor to a specific buffer.