QOpcUaElementOperand Class
Le type « ElementOperand » d'OPC UA. En savoir plus...
| En-tête : | #include <QOpcUaElementOperand> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
| qmake : | QT += opcua |
Fonctions publiques
| QOpcUaElementOperand() | |
| QOpcUaElementOperand(quint32 index) | |
| QOpcUaElementOperand(const QOpcUaElementOperand &rhs) | |
| quint32 | index() const |
| void | setIndex(quint32 index) |
| operator QVariant() const | |
| QOpcUaElementOperand & | operator=(const QOpcUaElementOperand &rhs) |
Éléments non membres associés
(since 6.7) bool | operator!=(const QOpcUaElementOperand &lhs, const QOpcUaElementOperand &rhs) |
(since 6.7) bool | operator==(const QOpcUaElementOperand &lhs, const QOpcUaElementOperand &rhs) |
Description détaillée
L'ElementOperand est défini dans la norme OPC UA 1.05, partie 4, section 7.7.4.2. Il sert à identifier un autre élément du filtre par son index (le premier élément ayant l'index 0).
Cela est nécessaire pour créer des filtres complexes, par exemple pour référencer les deux opérandes de l’opération ET dans ((Severity > 500) ET (Message == « TestString »)). La première étape consiste à créer des éléments de filtre de contenu pour les deux conditions (Severity > 500) et (Message == « TestString »). Un troisième élément de filtre de contenu est nécessaire pour créer une combinaison « AND » des deux conditions. Il se compose de l’opérateur « AND » et de deux opérandes d’élément portant les indices des deux conditions créées précédemment :
QOpcUaMonitoringParameters::EventFilter filter;
...
// setup select clauses
...
QOpcUaContentFilterElement condition1;
QOpcUaContentFilterElement condition2;
QOpcUaContentFilterElement condition3;
condition1 << QOpcUaContentFilterElement::FilterOperator::GreaterThan << QOpcUaSimpleAttributeOperand("Severity") <<
QOpcUaLiteralOperand(quint16(500), QOpcUa::Types::UInt16);
condition2 << QOpcUaContentFilterElement::FilterOperator::Equals << QOpcUaSimpleAttributeOperand("Message") <<
QOpcUaLiteralOperand("TestString", QOpcUa::Types::String);
condition3 << QOpcUaContentFilterElement::FilterOperator::And << QOpcUaElementOperand(0) << QOpcUaElementOperand(1);
filter << condition1 << condition2 << condition3;Documentation des fonctions membres
QOpcUaElementOperand::QOpcUaElementOperand()
La valeur par défaut construit un opérande de type élément sans aucun paramètre défini.
QOpcUaElementOperand::QOpcUaElementOperand(quint32 index)
Construit un opérande de type élément dont l'index est index.
QOpcUaElementOperand::QOpcUaElementOperand(const QOpcUaElementOperand &rhs)
Crée un opérande de type « élément » à partir de rhs.
quint32 QOpcUaElementOperand::index() const
Renvoie l'index de l'élément de filtre qui sera utilisé comme opérande.
Voir aussi setIndex().
void QOpcUaElementOperand::setIndex(quint32 index)
Définit l'index de l'élément de filtre qui sera utilisé comme opérande de la fonction ` index`.
Voir également index().
QOpcUaElementOperand::operator QVariant() const
Convertit cet opérande de type « élément » en « QVariant ».
QOpcUaElementOperand &QOpcUaElementOperand::operator=(const QOpcUaElementOperand &rhs)
Définit les valeurs provenant de rhs dans cet opérande d'élément.
Éléments non membres associés
[noexcept, since 6.7] bool operator!=(const QOpcUaElementOperand &lhs, const QOpcUaElementOperand &rhs)
Renvoie « true » si « lhs » a une valeur différente de « rhs ».
Cette fonction a été introduite dans Qt 6.7.
[noexcept, since 6.7] bool operator==(const QOpcUaElementOperand &lhs, const QOpcUaElementOperand &rhs)
Renvoie « true » si « lhs » a la même valeur que « rhs ».
Cette fonction a été introduite dans Qt 6.7.
© 2026 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.