Spec-Zone.ru › Qt 6.1

Тип QML EventFilter

Определяет EventFilter для отслеживаемого элемента. Подробнее...

Заявление об импорте: import QtOpcUa .
С момента: QtOpcUa 5.13
  • Список всех членов, включая унаследованные

Свойства

  • select : список<SimpleAttributeOperand>
  • where : список<FilterElement>

Подробное описание

Для мониторинга событий на сервере требуется фильтр событий. Он состоит из select и where.

select используются для указания данных, которые пользователь хочет получить при возникновении события. Он состоит из простых операндов атрибутов SimpleAttributeOperand, которые выбирают атрибуты дочерних узлов типа события, например, атрибут значения свойства "Message" типа BaseEventType.

where используется для ограничения сообщаемых событий путем сопоставления с определенными критериями. Несколько операторов и четыре различных типа операндов позволяют фильтровать на основе значений атрибутов дочерних узлов типа события.

Оператор select состоит из массива SimpleAttributeOperand. Оператор where состоит из массива SimpleAttributeOperand, LiteralOperand, ElementOperand или AttributeOperand.

Следующий EventFilter сообщает серверу сообщать значение поля "Message" для событий, у которых поле "Severity" имеет значение >= 500:

import QtOpcUa 5.13 as QtOpcUa
QtOpcUa.Node {
    ...

    eventFilter: QtOpcUa.EventFilter {
        select: [
                  QtOpcUa.SimpleAttributeOperand {
                    browsePath: [
                                  QtOpcUa.NodeId {
                                      identifier: "Severity"
                                      ns: "http://opcfoundation.org/UA/"
                                  }
                                ]
                  },
                  QtOpcUa.SimpleAttributeOperand {
                    browsePath: [
                                  QtOpcUa.NodeId {
                                      identifier: "Message"
                                      ns: "http://opcfoundation.org/UA/"
                                  }
                                ]
                  }
        ]

        where: [
            QtOpcUa.FilterElement {
                operator: QtOpcUa.FilterElement.GreaterThanOrEqual
                firstOperand: QtOpcUa.SimpleAttributeOperand {
                    browsePath: [
                                  QtOpcUa.NodeId {
                                      identifier: "Severity"
                                      ns: "http://opcfoundation.org/UA/"
                                  }
                                ]
                }
                secondOperand: QtOpcUa.LiteralOperand {
                                value: 700
                                type: QtOpcUa.Constants.UInt16
                 }
            }
        ]
    }
}

Для более сложного примера с двумя условиями см. QOpcUaElementOperand.

См. также FilterElement.

Документация по свойствам

select : список<SimpleAttributeOperand>

Выбранные поля события, которые следует включить при сообщении о новом событии.

where : список<FilterElement>

Фильтр содержимого, используемый для ограничения сообщаемых событий событиями, соответствующими определенным критериям.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qml-qtopcua-eventfilter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API