|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Abstract base for operators that process MeshNetwork slots. More...
#include <MeshOperator.hpp>
Inheritance diagram for MayaFlux::Nodes::Network::MeshOperator:
Collaboration diagram for MayaFlux::Nodes::Network::MeshOperator:Public Member Functions | |
| void | process (float dt) override |
| Iterate slots in topological order and call process_slot() on each. | |
| virtual void | process_slot (MeshSlot &slot, float dt)=0 |
| Process a single slot. | |
| std::optional< double > | query_state (std::string_view) const override |
| Query operator internal state. | |
| void | set_parameter (std::string_view, double) override |
| Set operator parameter. | |
| void | set_slots (std::vector< MeshSlot > &slots, const std::vector< uint32_t > &order) |
| Supply the slot list and processing order for the coming cycle. | |
| ~MeshOperator () override=default | |
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 std::string_view | get_type_name () const =0 |
| Type name for introspection. | |
| virtual | ~NetworkOperator ()=default |
Protected Attributes | |
| const std::vector< uint32_t > * | m_order { nullptr } |
| std::vector< MeshSlot > * | m_slots { nullptr } |
Abstract base for operators that process MeshNetwork slots.
Sits between NetworkOperator and the concrete mesh operators. Concrete subclasses implement process_slot() for per-slot logic; the base process() iterates m_slots in the caller-supplied topological order and delegates to process_slot() for each entry.
Slots are supplied once per cycle by MeshNetwork::process_batch() via set_slots(). The operator does not own the slot storage.
Topological order (parents before children) is enforced by MeshNetwork before it calls process(); operators receive slots in that order and must not re-order them.
Definition at line 24 of file MeshOperator.hpp.