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

◆ cleanup_rejected_processors()

void MayaFlux::Buffers::BufferProcessingChain::cleanup_rejected_processors ( const std::shared_ptr< Buffer > &  buffer)
private

Validates the processing token against the chain's preferred token.

Definition at line 299 of file BufferProcessingChain.cpp.

300{
301 auto& processors = m_buffer_processors[buffer];
302
303 processors.erase(
304 std::remove_if(processors.begin(), processors.end(),
305 [this](const std::shared_ptr<BufferProcessor>& processor) {
306 auto processor_token = processor->get_processing_token();
307 return !are_tokens_compatible(m_token_filter_mask, processor_token);
308 }),
309 processors.end());
310
311 m_pending_removal[buffer].clear();
312}
std::unordered_map< std::shared_ptr< Buffer >, std::unordered_set< std::shared_ptr< BufferProcessor > > > m_pending_removal
Map of buffers to processors pending removal.
std::unordered_map< std::shared_ptr< Buffer >, std::vector< std::shared_ptr< BufferProcessor > > > m_buffer_processors
Map of buffers to their processor sequences.

References m_buffer_processors, and m_pending_removal.

Referenced by process(), and process_non_owning().

+ Here is the caller graph for this function: