Qt State Machine 개요
상태 머신 프레임워크는 상태 그래프를 생성하고 실행하기 위한 클래스를 제공합니다. 개념과 표기법은 Harel의 스테이트차트를 기반으로 합니다: 복잡한 시스템을 위한 시각적 형식주의로, UML 상태 다이어그램의 기초이기도 합니다. 상태 머신 실행의 의미론은 상태 차트 XML(SCXML)을 기반으로 합니다.
상태 차트는 시스템이 자극에 반응하는 방식을 그래픽으로 모델링하는 방법을 제공합니다. 이는 시스템이 있을 수 있는 가능한 상태와 시스템이 한 상태에서 다른 상태로 이동하는 방법( 상태 간전환) 을 정의하여 수행됩니다. 이벤트 기반 시스템(예: Qt 애플리케이션)의 주요 특징은 동작이 종종 마지막 또는 현재 이벤트뿐만 아니라 그 이전의 이벤트에 따라 달라진다는 것입니다. 상태 차트를 사용하면 이러한 정보를 쉽게 표현할 수 있습니다.
State Machine 프레임워크는 Qt 애플리케이션에 상태차트의 요소와 의미를 효과적으로 임베드하는 데 사용할 수 있는 API와 실행 모델을 제공합니다. 예를 들어, 신호에 의해 상태 간 전환이 트리거되고 {QObject}에서 속성을 설정하고 메서드를 호출하도록 상태를 구성할 수 있는 등 이 프레임워크는 Qt의 메타 객체 시스템과 긴밀하게 통합됩니다. Qt의 이벤트 시스템은 상태 머신을 구동하는 데 사용됩니다.
상태 머신 프레임워크의 상태 그래프는 계층 구조입니다. 상태는 다른 상태 안에 중첩될 수 있으며, 상태 머신의 현재 구성은 현재 활성화된 상태의 집합으로 구성됩니다. 상태 머신의 유효한 구성에 있는 모든 상태는 공통의 조상을 갖습니다.
Qt State Machine C++ 가이드, Qt State Machine QML 가이드 및 Qt SCXML 개요를참조하세요 .
© 2025 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.