QOpcUaGenericStructValue Class
Enthält den Wert eines generischen strukturierten OPC-UA-Typs. Mehr...
| Header: | #include <QOpcUaGenericStructValue> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
| qmake: | QT += opcua |
| Seit: | Qt 6.7 |
Öffentliche Funktionen
| QOpcUaGenericStructValue() | |
| QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition) | |
| QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition, const QHash<QString, QVariant> &fields) | |
| QOpcUaGenericStructValue(const QOpcUaGenericStructValue &other) | |
| QOpcUaGenericStructValue(QOpcUaGenericStructValue &&other) | |
| ~QOpcUaGenericStructValue() | |
| QHash<QString, QVariant> | fields() const |
| QHash<QString, QVariant> & | fieldsRef() |
| void | setFields(const QHash<QString, QVariant> &fields) |
| void | setStructureDefinition(const QOpcUaStructureDefinition &structureDefinition) |
| void | setTypeId(const QString &typeId) |
| void | setTypeName(const QString &typeName) |
| QOpcUaStructureDefinition | structureDefinition() const |
| void | swap(QOpcUaGenericStructValue &other) |
| QString | toString() const |
| QString | typeId() const |
| QString | typeName() const |
| operator QVariant() const | |
| QOpcUaGenericStructValue & | operator=(QOpcUaGenericStructValue &&other) |
| QOpcUaGenericStructValue & | operator=(const QOpcUaGenericStructValue &rhs) |
Verwandte Nicht-Mitglieder
| bool | operator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs) |
| QDebug | operator<<(QDebug debug, const QOpcUaGenericStructValue &s) |
| bool | operator==(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs) |
Ausführliche Beschreibung
Diese Klasse enthält einen generischen OPC-UA-Strukturwert, der aus benannten Feldern mit ihren Werten besteht, bei denen es sich um integrierte Typen oder deren Untertypen sowie um andere verschachtelte generische Strukturen handeln kann. Einige Metainformationen wie die Typ-ID und die Strukturdefinition des in einem Objekt dieser Klasse enthaltenen Typs sind ebenfalls enthalten.
Sie wird als Rückgabetyp für das Dekodierungsergebnis und als Eingabetyp für die Kodierungsmethode von ` QOpcUaGenericStructHandler` verwendet.
Bei einer Struktur mit optionalen Feldern sind nur die Felder, die angegeben wurden, in der Liste „ fields() “ enthalten. Um ein optionales Feld bei der Kodierung wegzulassen, darf es nicht in der Liste „ fields()“ erscheinen. Bei vom Typ `Union` abgeleiteten Strukturen muss nur eines der Felder angegeben werden. Der einzige Eintrag in der Liste ` fields()` eines dekodierten Typs bestimmt, welches Feld (falls vorhanden) der Typdefinition angegeben wurde.
Beispiel:
// Ein Erweiterungsobjekt dekodieren
QOpcUaGenericStructValue value = decoder.decode(extensionObject, success);
// Den Wert eines obligatorischen Feldes ausgeben
qDebug() << value.fields().value("MyField").value<QOpcUaLocalizedText>();
// Den Wert eines optionalen Feldes ausgeben
if (value.fields().contains("MyOptionalField"))
qDebug() << value.fields().value("MyField").value<QOpcUaQualifiedName>();
// Eine verschachtelte Struktur für ein Feld abrufen
const auto unionMember = value.fields().value("MyUnionMember").value<QOpcUaGenericStructValue>();
// Das angegebene Feld ausgeben
if (unionMember.fields().contains("UnionMember1"))
qDebug() << unionMember.fields().value("UnionMember1").toInt();
else if (unionMember.fields().contains("UnionMember2"))
qDebug() << unionMember.fields().value("UnionMember2").toDouble();
sonst
qDebug() << "Empty union";Dokumentation zu Member-Funktionen
QOpcUaGenericStructValue::QOpcUaGenericStructValue()
Erstellt einen generischen Strukturwert.
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition)
Erstellt einen generischen Strukturwert aus typeName, typeId und definition.
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition, const QHash<QString, QVariant> &fields)
Erstellt einen generischen Strukturwert aus typeName, typeId, definition und fields.
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QOpcUaGenericStructValue &other)
Erstellt einen generischen Strukturwert aus „ other “.
[constexpr noexcept default] QOpcUaGenericStructValue::QOpcUaGenericStructValue(QOpcUaGenericStructValue &&other)
Erstellt durch „Move“ einen neuen generischen Strukturwert aus other.
Hinweis: Das Objekt „ other “, aus dem der Wert verschoben wurde, befindet sich in einem teilweise ausgebildeten Zustand, in dem die einzigen zulässigen Operationen die Zerstörung und die Zuweisung eines neuen Werts sind.
[noexcept] QOpcUaGenericStructValue::~QOpcUaGenericStructValue()
Löscht dieses generische Strukturwertobjekt.
QHash<QString, QVariant> QOpcUaGenericStructValue::fields() const
Gibt die Felder dieses generischen Strukturwerts zurück.
Siehe auch ` setFields()`.
QHash<QString, QVariant> &QOpcUaGenericStructValue::fieldsRef()
Gibt eine Referenz auf die Felder dieses generischen Strukturwerts zurück.
void QOpcUaGenericStructValue::setFields(const QHash<QString, QVariant> &fields)
Setzt die Felder dieses generischen Strukturwerts auf „ fields “.
Siehe auch fields().
void QOpcUaGenericStructValue::setStructureDefinition(const QOpcUaStructureDefinition &structureDefinition)
Legt die Strukturdefinition für diesen generischen Strukturwert auf „ structureDefinition “ fest.
Siehe auch „ structureDefinition()“.
void QOpcUaGenericStructValue::setTypeId(const QString &typeId)
Setzt die Typknoten-ID für diesen Wert der generischen Struktur auf „ typeId “.
Siehe auch typeId().
void QOpcUaGenericStructValue::setTypeName(const QString &typeName)
Legt den Typnamen für diesen Wert der generischen Struktur auf „ typeName “ fest.
Siehe auch ` typeName()`.
QOpcUaStructureDefinition QOpcUaGenericStructValue::structureDefinition() const
Gibt die Strukturdefinition für diesen generischen Strukturwert zurück.
Siehe auch ` setStructureDefinition()`.
[noexcept] void QOpcUaGenericStructValue::swap(QOpcUaGenericStructValue &other)
Tauscht das generische Strukturwert-Objekt „ other “ gegen dieses generische Strukturwert-Objekt aus. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.
QString QOpcUaGenericStructValue::toString() const
Gibt eine Zeichenfolgenrepräsentation für diesen Wert der generischen Struktur zurück.
QString QOpcUaGenericStructValue::typeId() const
Gibt die Typknoten-ID für diesen Wert der generischen Struktur zurück.
Siehe auch ` setTypeId()`.
QString QOpcUaGenericStructValue::typeName() const
Gibt den Typnamen für diesen Wert der generischen Struktur zurück.
Siehe auch ` setTypeName()`.
QOpcUaGenericStructValue::operator QVariant() const
Gibt ein ` QVariant ` zurück, das diesen Wert der generischen Struktur enthält.
[noexcept] QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(QOpcUaGenericStructValue &&other)
Weist „ other “ dieser Instanz von „ QOpcUaGenericStructValue “ zu.
Hinweis: Das verschobene Objekt other befindet sich in einem teilweise initialisierten Zustand, in dem die einzigen zulässigen Operationen die Zerstörung und die Zuweisung eines neuen Werts sind.
QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(const QOpcUaGenericStructValue &rhs)
Setzt den Wert von „ rhs “ in dieser generischen Struktur auf „value“.
Verwandte Nicht-Mitglieder
[noexcept] bool operator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)
Gibt „ true “ zurück, wenn „ lhs “ nicht gleich „ rhs “ ist.
QDebug operator<<(QDebug debug, const QOpcUaGenericStructValue &s)
Gibt die Zeichenfolgendarstellung von „ s “ in „ debug “ aus.
[noexcept] bool operator==(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)
Gibt „ true “ zurück, wenn „ lhs “ gleich „ rhs “ ist.
© 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.