QScxmlNullDataModel Class
QScxmlNullDataModel 클래스는 Qt SCXML stateMachine에 대한 널 데이터 모델입니다. 더 보기...
헤더: | #include <QScxmlNullDataModel> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Scxml) target_link_libraries(mytarget PRIVATE Qt6::Scxml) |
qmake: | QT += scxml |
상속합니다: | QScxmlDataModel |
공용 함수
QScxmlNullDataModel(QObject *parent = nullptr) | |
virtual | ~QScxmlNullDataModel() |
재구현된 공용 함수
virtual void | evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual void | evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body) override |
virtual void | evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual bool | evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual QString | evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual QVariant | evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual void | evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok) override |
virtual bool | hasScxmlProperty(const QString &name) const override |
virtual QVariant | scxmlProperty(const QString &name) const override |
virtual void | setScxmlEvent(const QScxmlEvent &event) override |
virtual bool | setScxmlProperty(const QString &name, const QVariant &value, const QString &context) override |
virtual bool | setup(const QVariantMap &initialDataValues) override |
상세 설명
이 클래스는 SCXML 사양 - B.1 널 데이터 모델에 설명된 대로 널 데이터 모델을 구현합니다. <scxml>
요소의 데이터 모델 속성에 "null"
값을 사용하면 기본 데이터 모델이 없지만 In(...)
또는 <log>
같은 일부 실행 가능한 콘텐츠는 계속 사용할 수 있음을 의미합니다.
QScxmlStateMachine 및 QScxmlDataModel 을참조하세요 .
멤버 함수 문서
[explicit]
QScxmlNullDataModel::QScxmlNullDataModel(QObject *parent = nullptr)
부모 개체 parent 를 사용하여 새 Qt SCXML 널 데이터 모델을 만듭니다.
[virtual noexcept]
QScxmlNullDataModel::~QScxmlNullDataModel()
데이터 모델을 삭제합니다.
[override virtual]
void QScxmlNullDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateAssignment(QScxmlExecutableContent::EvaluatorId id, bool *ok).
널 데이터 모델은 할당을 평가할 수 없으므로 오류를 던지고 ok 를 false
로 설정합니다.
[override virtual]
void QScxmlNullDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body)
다시 구현합니다: QScxmlDataModel::evaluateForeach(QScxmlExecutableContent::EvaluatorId id, bool *ok, QScxmlDataModel::ForeachLoopBody *body).
널 데이터 모델이 <foreach>
블록을 평가할 수 없으므로 오류를 발생시키고 ok 를 false
로 설정합니다.
[override virtual]
void QScxmlNullDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateInitialization(QScxmlExecutableContent::EvaluatorId id, bool *ok).
널 데이터 모델은 데이터를 초기화할 수 없으므로 오류를 발생시키고 ok 를 false
로 설정합니다.
[override virtual]
bool QScxmlNullDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateToBool(QScxmlExecutableContent::EvaluatorId id, bool *ok).
id 에서 가리키는 실행 가능한 콘텐츠를 평가하고 ok 에 에러가 있는지 여부를 기록합니다. 평가 결과를 부울 값으로 반환합니다. 널 데이터 모델은 In(...)
명령어를 평가할 수 있으므로 오류가 아닌 실제 값을 반환할 수 있습니다.
[override virtual]
QString QScxmlNullDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateToString(QScxmlExecutableContent::EvaluatorId id, bool *ok).
id 에서 가리키는 실행 가능한 콘텐츠를 평가하고 ok 에 에러가 있는지 여부를 기록합니다. 평가 결과를 문자열로 반환합니다. 널 데이터 모델은 <log>
요소를 평가할 수 있으므로 오류가 아닌 실제 값을 반환할 수 있습니다.
[override virtual]
QVariant QScxmlNullDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateToVariant(QScxmlExecutableContent::EvaluatorId id, bool *ok).
id 에서 가리키는 실행 가능한 콘텐츠를 평가하고 ok 에 오류가 있었는지 여부를 기록합니다. 이것은 널 데이터 모델이기 때문에 모든 평가는 실제로 오류를 발생시키며 ok 은 false
으로 설정됩니다. 빈 QVariant 을 반환합니다.
[override virtual]
void QScxmlNullDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok)
다시 구현합니다: QScxmlDataModel::evaluateToVoid(QScxmlExecutableContent::EvaluatorId id, bool *ok).
id 에서 가리키는 실행 가능한 콘텐츠를 평가하고 ok 에 오류가 있었는지 여부를 기록합니다. 이것은 널 데이터 모델이기 때문에 실제로 모든 평가는 ok 이 false
으로 설정된 오류를 발생시킵니다.
[override virtual]
bool QScxmlNullDataModel::hasScxmlProperty(const QString &name) const
재구현합니다: QScxmlDataModel::hasScxmlProperty(const QString &name) const.
널 데이터 모델은 프로퍼티를 지원하지 않으므로 false
를 리턴합니다.
[override virtual]
QVariant QScxmlNullDataModel::scxmlProperty(const QString &name) const
재구현합니다: QScxmlDataModel::scxmlProperty(const QString &name) const.
널 데이터 모델은 프로퍼티를 지원하지 않으므로, 유효하지 않은 변형을 반환합니다.
setScxmlProperty()도 참조하세요 .
[override virtual]
void QScxmlNullDataModel::setScxmlEvent(const QScxmlEvent &event)
재구현합니다: QScxmlDataModel::setScxmlEvent(const QScxmlEvent &event).
널 데이터 모델은 이벤트를 처리하지 않으므로 실제로 event 를 설정하지 않습니다.
[override virtual]
bool QScxmlNullDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context)
재구현합니다: QScxmlDataModel::setScxmlProperty(const QString &name, const QVariant &value, const QString &context).
널 데이터 모델은 프로퍼티를 지원하지 않으므로 false
를 반환합니다.
scxmlProperty()도 참조하세요 .
[override virtual invokable]
bool QScxmlNullDataModel::setup(const QVariantMap &initialDataValues)
재구현합니다: QScxmlDataModel::setup(const QVariantMap &initialDataValues).
© 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.