v2.0.0
Loading...
Searching...
No Matches
MNALIB::MnaParamTree Class Reference

Parameter tree with formula-driven dynamic bindings. More...

#include <mna_param_tree.h>

Public Member Functions

 MnaParamTree ()
void setParam (const QString &path, const QVariant &value)
QVariant param (const QString &path) const
bool hasParam (const QString &path) const
QStringList allPaths () const
void addBinding (const MnaParamBinding &binding)
void removeBinding (const QString &targetPath)
QList< MnaParamBindingbindings () const
bool hasBinding (const QString &targetPath) const
QStringList evaluate (const QMap< QString, QVariant > &results)
QVariant evaluateExpression (const QString &expr, const QMap< QString, QVariant > &results) const
QJsonObject toJson () const

Static Public Member Functions

static MnaParamTree fromJson (const QJsonObject &obj)

Detailed Description

Parameter tree with formula-driven dynamic bindings.

Hierarchical parameter store for the MNA graph. Each parameter has a path ("nodeId/attrKey") and an optional binding — a formula that recomputes the value whenever a trigger condition is met.

Definition at line 72 of file mna_param_tree.h.

Constructor & Destructor Documentation

◆ MnaParamTree()

MnaParamTree::MnaParamTree ( )

Definition at line 56 of file mna_param_tree.cpp.

Member Function Documentation

◆ addBinding()

void MnaParamTree::addBinding ( const MnaParamBinding & binding)

Definition at line 90 of file mna_param_tree.cpp.

◆ allPaths()

QStringList MnaParamTree::allPaths ( ) const

Definition at line 83 of file mna_param_tree.cpp.

◆ bindings()

QList< MnaParamBinding > MnaParamTree::bindings ( ) const

Definition at line 104 of file mna_param_tree.cpp.

◆ evaluate()

QStringList MnaParamTree::evaluate ( const QMap< QString, QVariant > & results)

Evaluate all bindings whose trigger condition is met.

Parameters
resultsMap of nodeId::portName → data (from execution context).
Returns
Paths whose values changed.

Definition at line 118 of file mna_param_tree.cpp.

◆ evaluateExpression()

QVariant MnaParamTree::evaluateExpression ( const QString & expr,
const QMap< QString, QVariant > & results ) const

Evaluate a single expression in the current context.

Parameters
exprExpression string.
resultsMap of nodeId::portName → data (from execution context).
Returns
Computed value.

Definition at line 146 of file mna_param_tree.cpp.

◆ fromJson()

MnaParamTree MnaParamTree::fromJson ( const QJsonObject & obj)
static

Definition at line 285 of file mna_param_tree.cpp.

◆ hasBinding()

bool MnaParamTree::hasBinding ( const QString & targetPath) const

Definition at line 111 of file mna_param_tree.cpp.

◆ hasParam()

bool MnaParamTree::hasParam ( const QString & path) const

Definition at line 76 of file mna_param_tree.cpp.

◆ param()

QVariant MnaParamTree::param ( const QString & path) const

Definition at line 69 of file mna_param_tree.cpp.

◆ removeBinding()

void MnaParamTree::removeBinding ( const QString & targetPath)

Definition at line 97 of file mna_param_tree.cpp.

◆ setParam()

void MnaParamTree::setParam ( const QString & path,
const QVariant & value )

Definition at line 62 of file mna_param_tree.cpp.

◆ toJson()

QJsonObject MnaParamTree::toJson ( ) const

Definition at line 258 of file mna_param_tree.cpp.


The documentation for this class was generated from the following files: