QScxmlDataModel

The QScxmlDataModel class is the data model base class for a Qt SCXML state machine. More

Inheritance diagram of PySide2.QtScxml.QScxmlDataModel

Inherited by: QScxmlCppDataModel, QScxmlEcmaScriptDataModel, QScxmlNullDataModel

New in version 5.12.

Synopsis

Functions

Virtual functions

Signals

Detailed Description

SCXML data models are described in SCXML Specification - 5 Data Model and Data Manipulation . For more information about supported data models, see SCXML Compliance .

One data model can only belong to one state machine.

class QScxmlDataModel([parent=None])
param parent

QObject

Creates a new data model, with the parent object parent .

PySide2.QtScxml.QScxmlDataModel.evaluateAssignment(id, ok)
Parameters
  • idint

  • okbool

Evaluates the assignment pointed to by id and sets ok to false if there was an error or to true if there was not.

PySide2.QtScxml.QScxmlDataModel.evaluateForeach(id, ok, body)
Parameters

Evaluates the foreach loop pointed to by id and sets ok to false if there was an error or to true if there was not. The body is executed on each iteration.

PySide2.QtScxml.QScxmlDataModel.evaluateInitialization(id, ok)
Parameters
  • idint

  • okbool

Evaluates the initialization pointed to by id and sets ok to false if there was an error or to true if there was not.

PySide2.QtScxml.QScxmlDataModel.evaluateToBool(id)
Parameters

idint

Return type

bool

Evaluates the executable content pointed to by id and sets ok to false if there was an error or to true if there was not. Returns the result of the evaluation as a boolean value.

PySide2.QtScxml.QScxmlDataModel.evaluateToString(id)
Parameters

idint

Return type

unicode

Evaluates the executable content pointed to by id and sets ok to false if there was an error or to true if there was not. Returns the result of the evaluation as a QString .

PySide2.QtScxml.QScxmlDataModel.evaluateToVariant(id)
Parameters

idint

Return type

object

Evaluates the executable content pointed to by id and sets ok to false if there was an error or to true if there was not. Returns the result of the evaluation as a QVariant .

PySide2.QtScxml.QScxmlDataModel.evaluateToVoid(id, ok)
Parameters
  • idint

  • okbool

Evaluates the executable content pointed to by id and sets ok to false if there was an error or to true if there was not. The execution is expected to return no result.

PySide2.QtScxml.QScxmlDataModel.hasScxmlProperty(name)
Parameters

name – unicode

Return type

bool

Returns true if a property with the given name exists, false otherwise.

PySide2.QtScxml.QScxmlDataModel.scxmlProperty(name)
Parameters

name – unicode

Return type

object

Returns the value of the property name .

PySide2.QtScxml.QScxmlDataModel.setScxmlEvent(event)
Parameters

eventQScxmlEvent

Sets the event to use in the subsequent executable content execution.

PySide2.QtScxml.QScxmlDataModel.setScxmlProperty(name, value, context)
Parameters
  • name – unicode

  • value – object

  • context – unicode

Return type

bool

Sets a the value value for the property name .

The context is a string that is used in error messages to indicate the location in the SCXML file where the error occurred.

Returns true if successful or false if an error occurred.

See also

scxmlProperty()

PySide2.QtScxml.QScxmlDataModel.setStateMachine(stateMachine)
Parameters

stateMachineQScxmlStateMachine

Sets the state machine this model belongs to to stateMachine . There is a 1:1 relation between state machines and models. After setting the state machine once you cannot change it anymore. Any further attempts to set the state machine using this method will be ignored.

See also

stateMachine()

PySide2.QtScxml.QScxmlDataModel.setup(initialDataValues)
Parameters

initialDataValuesQVariantMap

Return type

bool

Initializes the data model with the initial values specified by initialDataValues .

Returns false if parse errors occur or if any of the initialization steps fail. Returns true otherwise.

PySide2.QtScxml.QScxmlDataModel.stateMachine()
Return type

QScxmlStateMachine

Returns the state machine associated with the data model.

PySide2.QtScxml.QScxmlDataModel.stateMachineChanged(stateMachine)
Parameters

stateMachineQScxmlStateMachine