QScxmlNullDataModel Class

The QScxmlNullDataModel class is the null data model for a Qt SCXML stateMachine 更多...

头: #include <QScxmlNullDataModel>
qmake: QT += scxml
Since: Qt 5.7
继承: QScxmlDataModel

公共函数

QScxmlNullDataModel (QObject * parent = nullptr)
~QScxmlNullDataModel ()

重实现公共函数

virtual void evaluateAssignment (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual void evaluateForeach (QScxmlExecutableContent::EvaluatorId id , bool * ok , ForeachLoopBody * body )
virtual void evaluateInitialization (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual bool evaluateToBool (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual QString evaluateToString (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual QVariant evaluateToVariant (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual void evaluateToVoid (QScxmlExecutableContent::EvaluatorId id , bool * ok )
virtual bool hasScxmlProperty (const QString & name ) const
virtual QVariant scxmlProperty (const QString & name ) const
virtual void setScxmlEvent (const QScxmlEvent & event )
virtual bool setScxmlProperty (const QString & name , const QVariant & value , const QString & context )
virtual bool setup (const QVariantMap & initialDataValues )

额外继承成员

详细描述

The QScxmlNullDataModel class is the null data model for a Qt SCXML stateMachine

This class implements the null data model as described in the SCXML Specification - B.1 The Null Data Model . Using the value "null" datamodel 属性在 <scxml> element means that there is no underlying data model, but some executable content, like In(...) or <log> can still be used.

另请参阅 QScxmlStateMachine and QScxmlDataModel .

成员函数文档编制

QScxmlNullDataModel:: QScxmlNullDataModel ( QObject * parent = nullptr)

Creates a new Qt SCXML null data model, with the parent object parent .

QScxmlNullDataModel:: ~QScxmlNullDataModel ()

Destroys the data model.

[虚拟] void QScxmlNullDataModel:: evaluateAssignment ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateAssignment ().

Throws an error and sets ok to false , because the null data model cannot evaluate assignments.

[虚拟] void QScxmlNullDataModel:: evaluateForeach ( QScxmlExecutableContent::EvaluatorId id , bool * ok , ForeachLoopBody * body )

重实现自 QScxmlDataModel::evaluateForeach ().

Throws an error and sets ok to false , because the null data model cannot evaluate <foreach> blocks.

[虚拟] void QScxmlNullDataModel:: evaluateInitialization ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateInitialization ().

Throws an error and sets ok to false , because the null data model cannot initialize data.

[虚拟] bool QScxmlNullDataModel:: evaluateToBool ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateToBool ().

Evaluates the executable content pointed to by id and records in ok whether there was an error. Returns the result of the evaluation as a boolean value. The null data model can evaluate the instruction In(...) , so this might result in an actual value, rather than an error.

[虚拟] QString QScxmlNullDataModel:: evaluateToString ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateToString ().

Evaluates the executable content pointed to by id and records in ok whether there was an error. Returns the result of the evaluation as a string. The null data model can evaluate the <log> element, so this might result in an actual value, rather than an error

[虚拟] QVariant QScxmlNullDataModel:: evaluateToVariant ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateToVariant ().

Evaluates the executable content pointed to by id and records in ok whether there was an error. As this is the null data model, any evaluation will in fact result in an error, with ok 设为 false . Returns an empty QVariant .

[虚拟] void QScxmlNullDataModel:: evaluateToVoid ( QScxmlExecutableContent::EvaluatorId id , bool * ok )

重实现自 QScxmlDataModel::evaluateToVoid ().

Evaluates the executable content pointed to by id and records in ok whether there was an error. As this is the null data model, any evaluation will in fact result in an error, with ok 设为 false .

[虚拟] bool QScxmlNullDataModel:: hasScxmlProperty (const QString & name ) const

重实现自 QScxmlDataModel::hasScxmlProperty ().

返回 false , because the null data model does not support properties.

[虚拟] QVariant QScxmlNullDataModel:: scxmlProperty (const QString & name ) const

重实现自 QScxmlDataModel::scxmlProperty ().

Returns an invalid variant, because the null data model does not support properties.

另请参阅 setScxmlProperty ().

[虚拟] void QScxmlNullDataModel:: setScxmlEvent (const QScxmlEvent & event )

重实现自 QScxmlDataModel::setScxmlEvent ().

Does not actually set the event , because the null data model does not handle events.

[虚拟] bool QScxmlNullDataModel:: setScxmlProperty (const QString & name , const QVariant & value , const QString & context )

重实现自 QScxmlDataModel::setScxmlProperty ().

返回 false , because the null data model does not support properties.

另请参阅 scxmlProperty ().

[虚拟] bool QScxmlNullDataModel:: setup (const QVariantMap & initialDataValues )

重实现自 QScxmlDataModel::setup ().