- Qt 6.11
- Qt SCXML
- Qt 6.11.2 Reference Documentation

# Qt SCXML

The Qt SCXML module provides functionality to create state machines from SCXML files. This includes both dynamically creating state machines (loading the SCXML file and instantiating states and transitions) and generating a C++ file that has a class implementing the state machine. It also contains functionality to support data models and executable content.

## Getting Started

To use Qt SCXML, install the Qt State Machines additional library.

To import the QML types into your application, use the following import statement in your .qml file:

     import QtScxml

To link against the module:

Using cmake:

     find_package(Qt6 REQUIRED COMPONENTS Scxml)
     target_link_libraries(mytarget PRIVATE Qt6::Scxml)

Using qmake:

     QT += scxml

## Articles and Guides

- Qt SCXML Overview
- Instantiating State Machines
- SCXML Compliance
- Using the Qt SCXML Compiler (qscxmlc)

## Examples

- Qt SCXML Examples

## Reference

- C++ Classes and Namespaces
- QML Types

## Module Evolution

Changes to Qt SCXML lists important changes in the module API and functionality that were done for the Qt 6 series of Qt.

## Licenses and Trademarks

The Qt SCXML module is available under commercial licenses from The Qt Company. In addition, it is available under free software licenses: The GNU Lesser General Public License, version 3, or the GNU General Public License, version 2. See Qt Licensing for further details.