|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
Produces every slot's signal for the block. More...
#include <RelationOperators.hpp>
Inheritance diagram for MayaFlux::Nodes::Network::AdvanceOperator:
Collaboration diagram for MayaFlux::Nodes::Network::AdvanceOperator:Public Member Functions | |
| std::string_view | get_type_name () const override |
| Type name for introspection. | |
| void | process (float frames) override |
| Process for one batch cycle. | |
| std::optional< double > | query_state (std::string_view) const override |
| Query operator internal state. | |
| void | set_parameter (std::string_view, double) override |
Public Member Functions inherited from MayaFlux::Nodes::Network::RelationOperator | |
| void | begin_block () |
| Apply mapped parameters at the start of a block. | |
| virtual std::span< const double > | get_output_block (size_t) const |
| virtual size_t | get_output_count () const |
| void | map (std::string parameter, Source source) |
| Drive an operator parameter from a source. | |
| virtual bool | publishes_output () const |
| void | set_slots (std::vector< RelationSlot > &slots) noexcept |
| Supply the current slot storage. | |
| void | unmap (std::string_view parameter) |
| Remove the mapping of a parameter. | |
Public Member Functions inherited from MayaFlux::Nodes::Network::NetworkOperator | |
| virtual void | apply_one_to_one (std::string_view param, const std::shared_ptr< NodeNetwork > &source) |
| Apply ONE_TO_ONE parameter mapping (per-point control) | |
| virtual bool | demands_full_vertex_restore () const |
| Whether a downstream compute pass writes the network's vertex buffer in place each cycle, so the geometry producer must keep restoring the CPU-authoritative vertex data every frame. | |
| virtual | ~NetworkOperator ()=default |
Private Attributes | |
| std::vector< double > | m_scratch |
| size_t | m_scratch_pos {} |
Additional Inherited Members | |
Protected Member Functions inherited from MayaFlux::Nodes::Network::RelationOperator | |
| std::span< RelationSlot > | slots () const noexcept |
Produces every slot's signal for the block.
For each slot with a node, advances it for the whole block through extract_node_samples(). A slot without a node keeps its stored level for every frame.
A node's hooks (on_impulse, on_phase_wrap, on_tick, ...) fire during this advance, since set_node() enables them.
Activity is read once per slot per block, at the start of process(). Place AdvanceOperator after operators whose slot writes should apply this block, and before DeriveOperator and CombineOperator, which read rendered blocks.
Definition at line 251 of file RelationOperators.hpp.