QScxmlNullDataModel Class
La classe `QScxmlNullDataModel` correspond au modèle de données nul pour une machine à états de type « Qt SCXML ». En savoir plus...
| En-tête : | #include <QScxmlNullDataModel> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Scxml) target_link_libraries(mytarget PRIVATE Qt6::Scxml) |
| qmake : | QT += scxml |
| Hérite de : | QScxmlDataModel |
Fonctions publiques
| QScxmlNullDataModel(QObject *parent = nullptr) | |
| virtual | ~QScxmlNullDataModel() |
Fonctions publiques réimplémentées
| 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 |
Description détaillée
Cette classe implémente le modèle de données nul tel que décrit dans la spécification SCXML - B.1 « The Null Data Model ». L'utilisation de la valeur « "null" » pour l'attribut « datamodel » de l'élément « <scxml> » signifie qu'il n'y a pas de modèle de données sous-jacent, mais que certains contenus exécutables, tels que « In(...) » ou « <log> », peuvent tout de même être utilisés.
Voir également QScxmlStateMachine et QScxmlDataModel.
Documentation sur les fonctions membres
[explicit] QScxmlNullDataModel::QScxmlNullDataModel(QObject *parent = nullptr)
Crée un nouveau modèle de données null de type « Qt SCXML », dont l'objet parent est parent.
[virtual noexcept] QScxmlNullDataModel::~QScxmlNullDataModel()
Supprime le modèle de données.
[override virtual] void QScxmlNullDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Lance une erreur et définit ok sur false, car le modèle de données nul ne peut pas évaluer les affectations.
[override virtual] void QScxmlNullDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body)
Réimplémente : QScxmlDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body).
Lance une erreur et définit ok sur false, car le modèle de données nul ne peut pas évaluer les blocs <foreach>.
[override virtual] void QScxmlNullDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Lance une erreur et définit ok sur false, car le modèle de données nul ne permet pas d'initialiser les données.
[override virtual] bool QScxmlNullDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Évalue le contenu exécutable pointé par id et indique dans ok s'il y a eu une erreur. Renvoie le résultat de l'évaluation sous la forme d'une valeur booléenne. Le modèle de données nul peut évaluer l'instruction In(...), ce qui peut donc aboutir à une valeur réelle plutôt qu'à une erreur.
[override virtual] QString QScxmlNullDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Évalue le contenu exécutable pointé par id et indique dans ok s’il y a eu une erreur. Renvoie le résultat de l’évaluation sous forme de chaîne de caractères. Le modèle de données nul peut évaluer l’élément <log>, ce qui peut donc aboutir à une valeur réelle plutôt qu’à une erreur.
[override virtual] QVariant QScxmlNullDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Évalue le contenu exécutable pointé par id et indique dans ok s'il y a eu une erreur. Comme il s'agit du modèle de données nul, toute évaluation entraînera en fait une erreur, ok étant alors défini sur false. Renvoie un QVariant vide.
[override virtual] void QScxmlNullDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok)
Réimplémente : QScxmlDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok).
Évalue le contenu exécutable pointé par id et enregistre dans ok s’il y a eu une erreur. Comme il s’agit du modèle de données nul, toute évaluation entraînera en fait une erreur, ok étant alors défini sur false.
[override virtual] bool QScxmlNullDataModel::hasScxmlProperty(const QString &name) const
Réimplémente : QScxmlDataModel::hasScxmlProperty(const QString &name) const.
Renvoie ` false`, car le modèle de données null ne prend pas en charge les propriétés.
[override virtual] QVariant QScxmlNullDataModel::scxmlProperty(const QString &name) const
Réimplémente : ` QScxmlDataModel::scxmlProperty(const QString &name) const`.
Renvoie une variante non valide, car le modèle de données null ne prend pas en charge les propriétés.
Voir également setScxmlProperty().
[override virtual] void QScxmlNullDataModel::setScxmlEvent(const QScxmlEvent &event)
Réimplémente : QScxmlDataModel::setScxmlEvent(const QScxmlEvent &event).
Ne définit pas réellement l'event, car le modèle de données null ne gère pas les événements.
[override virtual] bool QScxmlNullDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context)
Réimplémente : QScxmlDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context).
Renvoie false, car le modèle de données null ne prend pas en charge les propriétés.
Voir également scxmlProperty().
[override virtual invokable] bool QScxmlNullDataModel::setup(const QVariantMap &initialDataValues)
Réimplémente : 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.