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

◆ update_processing_state()

void MayaFlux::Kakshya::PlotContainer::update_processing_state ( ProcessingState  new_state)
overridevirtual

Update the processing state of the container.

Parameters
new_stateNew ProcessingState to set

May trigger registered state change callbacks for event-driven workflows.

Implements MayaFlux::Kakshya::SignalSourceContainer.

Definition at line 417 of file PlotContainer.cpp.

418{
419 ProcessingState prev = m_processing_state.exchange(state);
420 if (prev == state)
421 return;
422
424 if (m_state_cb)
425 m_state_cb(shared_from_this(), state);
426 });
427}
std::function< void(const std::shared_ptr< SignalSourceContainer > &, ProcessingState)> m_state_cb
std::atomic< ProcessingState > m_processing_state
ProcessingState
Represents the current processing lifecycle state of a container.
bool seqlock_read_void(const Seqlock &lock, uint32_t max_attempts, Fn &&fn)
Invoke a void read functor under a Seqlock with a bounded retry count.
Definition SeqLock.hpp:268

References m_cb_lock, m_processing_state, and m_state_cb.

Referenced by clear(), mark_ready_for_processing(), and process_default().

+ Here is the caller graph for this function: