QScxmlInvokableServiceFactory Class

The QScxmlInvokableServiceFactory class creates invokable service instances. More...

Header: #include <QScxmlInvokableServiceFactory>
qmake: QT += scxml
Since: Qt 5.8
Inherits: QObject
Inherited By:

QScxmlDynamicScxmlServiceFactory and QScxmlStaticScxmlServiceFactory

This class was introduced in Qt 5.8.


  • invokeInfo : const QScxmlExecutableContent::InvokeInfo
  • names : const QVector<QScxmlExecutableContent::StringId>
  • parameters : const QVector<QScxmlExecutableContent::ParameterInfo>

Public Functions

virtual QScxmlInvokableService *invoke(QScxmlStateMachine *parentStateMachine) = 0
const QScxmlExecutableContent::InvokeInfo &invokeInfo() const
const QVector<QScxmlExecutableContent::StringId> &names() const
const QVector<QScxmlExecutableContent::ParameterInfo> &parameters() const

Detailed Description

Each service instance represents an <invoke> element in the SCXML document. Each time the service is actually invoked, a new instance of QScxmlInvokableService is created.

Property Documentation

invokeInfo : const QScxmlExecutableContent::InvokeInfo

This property holds the QScxmlExecutableContent::InvokeInfo passed to the constructor.

Access functions:

const QScxmlExecutableContent::InvokeInfo &invokeInfo() const

names : const QVector<QScxmlExecutableContent::StringId>

This property holds the names passed to the constructor.

Access functions:

const QVector<QScxmlExecutableContent::StringId> &names() const

parameters : const QVector<QScxmlExecutableContent::ParameterInfo>

This property holds the parameters passed to the constructor.

Access functions:

const QVector<QScxmlExecutableContent::ParameterInfo> &parameters() const

Member Function Documentation

[pure virtual] QScxmlInvokableService *QScxmlInvokableServiceFactory::invoke(QScxmlStateMachine *parentStateMachine)

Invokes the service with the parameters given in the constructor, passing parentStateMachine as the parent. Returns the new invokable service.

© 2019 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.