QScxmlNullDataModel Class
Die Klasse „QScxmlNullDataModel“ ist das Null-Datenmodell für eine „ Qt SCXML “-Zustandsmaschine. Mehr...
| Header: | #include <QScxmlNullDataModel> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Scxml) target_link_libraries(mytarget PRIVATE Qt6::Scxml) |
| qmake: | QT += scxml |
| Erbt: | QScxmlDataModel |
Öffentliche Funktionen
| QScxmlNullDataModel(QObject *parent = nullptr) | |
| virtual | ~QScxmlNullDataModel() |
Neu implementierte öffentliche Funktionen
| virtual void | evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual void | evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body) override |
| virtual void | evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual bool | evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual QString | evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual QVariant | evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual void | evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
| virtual bool | hasScxmlProperty(const QString &name) const override |
| virtual QVariant | scxmlProperty(const QString &name) const override |
| virtual void | setScxmlEvent(const QScxmlEvent &event) override |
| virtual bool | setScxmlProperty(const QString &name, const QVariant &value, const QString &context) override |
| virtual bool | setup(const QVariantMap &initialDataValues) override |
Ausführliche Beschreibung
Diese Klasse implementiert das Null-Datenmodell, wie es in der SCXML-Spezifikation – B.1 „Das Null-Datenmodell“ – beschrieben ist. Die Verwendung des Werts „ "null" “ für das Attribut „datamodel“ des Elements „ <scxml> “ bedeutet, dass kein zugrunde liegendes Datenmodell vorhanden ist; dennoch können einige ausführbare Inhalte wie „ In(...) “ oder „ <log> “ weiterhin verwendet werden.
Siehe auch QScxmlStateMachine und QScxmlDataModel.
Dokumentation zu Mitgliedsfunktionen
[explicit] QScxmlNullDataModel::QScxmlNullDataModel(QObject *parent = nullptr)
Erstellt ein neues Datenmodell vom Typ „ Qt SCXML “ (Null), dessen übergeordnetes Objekt „ parent “ ist.
[virtual noexcept] QScxmlNullDataModel::~QScxmlNullDataModel()
Löscht das Datenmodell.
[override virtual] void QScxmlNullDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Implementiert neu: QScxmlDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Löst einen Fehler aus und setzt „ ok “ auf „ false “, da das Null-Datenmodell keine Zuweisungen auswerten kann.
[override virtual] void QScxmlNullDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body)
Implementiert neu: QScxmlDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body).
Löst einen Fehler aus und setzt ` ok ` auf ` false`, da das Null-Datenmodell keine ` <foreach> `-Blöcke auswerten kann.
[override virtual] void QScxmlNullDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Implementiert: QScxmlDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Löst einen Fehler aus und setzt „ ok “ auf „ false “, da das Null-Datenmodell keine Daten initialisieren kann.
[override virtual] bool QScxmlNullDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Implementiert neu: QScxmlDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Wertet den ausführbaren Inhalt aus, auf den „ id “ verweist, und protokolliert in „ ok “, ob ein Fehler aufgetreten ist. Gibt das Ergebnis der Auswertung als booleschen Wert zurück. Das Null-Datenmodell kann die Anweisung „ In(...) “ auswerten, sodass dies möglicherweise zu einem tatsächlichen Wert statt zu einem Fehler führt.
[override virtual] QString QScxmlNullDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Umsetzung von: QScxmlDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Wertet den ausführbaren Inhalt aus, auf den id verweist, und protokolliert in ok, ob ein Fehler aufgetreten ist. Gibt das Ergebnis der Auswertung als Zeichenfolge zurück. Das Null-Datenmodell kann das Element „ <log> “ auswerten, sodass dies möglicherweise zu einem tatsächlichen Wert statt zu einem Fehler führt.
[override virtual] QVariant QScxmlNullDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Implementiert neu: QScxmlDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Wertet den ausführbaren Inhalt aus, auf den id verweist, und protokolliert in ok, ob ein Fehler aufgetreten ist. Da es sich um das Null-Datenmodell handelt, führt jede Auswertung tatsächlich zu einem Fehler, wobei ok auf false gesetzt wird. Gibt ein leeres QVariant zurück.
[override virtual] void QScxmlNullDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Implementiert neu: QScxmlDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Wertet den ausführbaren Inhalt aus, auf den id verweist, und protokolliert in ok, ob ein Fehler aufgetreten ist. Da es sich hierbei um das Null-Datenmodell handelt, führt jede Auswertung tatsächlich zu einem Fehler, wobei ok auf false gesetzt wird.
[override virtual] bool QScxmlNullDataModel::hasScxmlProperty(const QString &name) const
Implementiert neu: ` QScxmlDataModel::hasScxmlProperty(const QString &name) const`.
Gibt ` false` zurück, da das Null-Datenmodell keine Eigenschaften unterstützt.
[override virtual] QVariant QScxmlNullDataModel::scxmlProperty(const QString &name) const
Implementiert: ` QScxmlDataModel::scxmlProperty(const QString &name) const`.
Gibt eine ungültige Variante zurück, da das Null-Datenmodell keine Eigenschaften unterstützt.
Siehe auch setScxmlProperty().
[override virtual] void QScxmlNullDataModel::setScxmlEvent(const QScxmlEvent &event)
Implementiert: ` QScxmlDataModel::setScxmlEvent(const QScxmlEvent &event)`.
Setzt „ event “ nicht tatsächlich, da das Null-Datenmodell keine Ereignisse verarbeitet.
[override virtual] bool QScxmlNullDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context)
Implementiert neu: ` QScxmlDataModel::setScxmlProperty` (const QString &name, const QVariant &value, const QString &context).
Gibt ` false` zurück, da das Null-Datenmodell keine Eigenschaften unterstützt.
Siehe auch scxmlProperty().
[override virtual invokable] bool QScxmlNullDataModel::setup(const QVariantMap &initialDataValues)
Implementiert neu: QScxmlDataModel::setup(const QVariantMap &initialDataValues).
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.