1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QSCXMLNULLDATAMODEL_H
5#define QSCXMLNULLDATAMODEL_H
6
7#include <QtScxml/qscxmldatamodel.h>
8
9QT_BEGIN_NAMESPACE
10
11class QScxmlNullDataModelPrivate;
12class Q_SCXML_EXPORT QScxmlNullDataModel: public QScxmlDataModel
13{
14 Q_OBJECT
15 Q_DECLARE_PRIVATE(QScxmlNullDataModel)
16public:
17 explicit QScxmlNullDataModel(QObject *parent = nullptr);
18 ~QScxmlNullDataModel();
19
20 Q_INVOKABLE bool setup(const QVariantMap &initialDataValues) override;
21
22 QString evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
23 bool evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
24 QVariant evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
25 void evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
26 void evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
27 void evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok) override final;
28 void evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, ForeachLoopBody *body) override final;
29
30 void setScxmlEvent(const QScxmlEvent &event) override;
31
32 QVariant scxmlProperty(const QString &name) const override;
33 bool hasScxmlProperty(const QString &name) const override;
34 bool setScxmlProperty(const QString &name, const QVariant &value, const QString &context) override;
35};
36
37QT_END_NAMESPACE
38
39#endif // QSCXMLNULLDATAMODEL_H
40

source code of qtscxml/src/scxml/qscxmlnulldatamodel.h