MnaParamBinding
Namespace: MNALIB · Library: MNA Library
#include <mna/mna_param_binding.h>
struct MNALIB::MnaParamBinding
A formula-driven parameter binding: links a target parameter path to an expression that is re-evaluated when a trigger condition is met.
Dynamic parameter binding for the MNA parameter tree.
src/examples/ex_mna/main.cpp
graph.paramTree.setParam("shift/offset", 0.5);
MnaParamBinding binding;
binding.targetPath = "scale/gain";
binding.expression = "clamp(ref('source::out') * 2, 0, 5)"; // evaluated against node results
binding.trigger = "on_change";
graph.paramTree.addBinding(binding);
Public Methods
toJson()
toCbor()
Static Methods
fromJson(json)
fromCbor(cbor)
Example
- Full source:
src/examples/ex_mna/main.cpp - Build target:
ex_mna(runs under CTest)
Used in examples
ex_mna
MNA library: register operations, build and run a graph, bind parameters and save a project.
src/examples/ex_mna/main.cpp, line 150
graph.paramTree.setParam("shift/offset", 0.5);
MnaParamBinding binding;
binding.targetPath = "scale/gain";
binding.expression = "clamp(ref('source::out') * 2, 0, 5)"; // evaluated against node results
binding.trigger = "on_change";
graph.paramTree.addBinding(binding);
Authors of this file
- Christoph Dinh <christoph.dinh@mne-cpp.org>