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

◆ notify_tick()

void MayaFlux::Nodes::GpuSync::GpuComputeNode::notify_tick ( double  value)
overridevirtual

Notifies all registered callbacks with the current context.

Parameters
valueThe current sample value

This method is called by the node implementation when a new output value is produced. It creates a context object using create_context(), then calls all registered callbacks with that context.

For unconditional callbacks (registered with on_tick()), the callback is always called. For conditional callbacks (registered with on_tick_if()), the callback is called only if its condition returns true.

Node implementations should call this method at appropriate points in their processing flow to trigger callbacks.

Implements MayaFlux::Nodes::Node.

Definition at line 74 of file GpuComputeNode.cpp.

75{
76 update_context(0.0);
77
78 for (auto& cb : m_complete_callbacks)
80
82 "GpuComputeNode: dispatch complete, {} primary floats, {} aux bindings",
83 m_last_result.primary.size(), m_last_result.aux.size());
84}
#define MF_DEBUG(comp, ctx,...)
std::unique_ptr< GpuComputeContext > m_context_storage
std::vector< TypedHook< GpuComputeContext > > m_complete_callbacks
void update_context(double value) override
Updates the context object with the current node state.
@ NodeProcessing
Node graph processing (Nodes::NodeGraphManager)
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
std::unordered_map< size_t, std::vector< uint8_t > > aux

References MayaFlux::Yantra::GpuChannelResult::aux, m_complete_callbacks, m_context_storage, m_last_result, MF_DEBUG, MayaFlux::Journal::NodeProcessing, MayaFlux::Journal::Nodes, MayaFlux::Yantra::GpuChannelResult::primary, and update_context().

Referenced by compute_frame().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: