QOpcUaGenericStructValue 类
包含一个通用 OPC UA 结构类型的值。 更多...
头文件 | #include <QOpcUaGenericStructValue> |
CMake | find_package(Qt6 REQUIRED COMPONENTS OpcUa) target_link_libraries(mytarget PRIVATE Qt6::OpcUa) |
qmake | QT += opcua |
自版本 | Qt 6.7 |
公共函数
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 |
QVariant | operator QVariant() const |
QOpcUaGenericStructValue & | operator=(const QOpcUaGenericStructValue &rhs) |
QOpcUaGenericStructValue & | operator=(QOpcUaGenericStructValue &&other) |
相关非成员函数
bool | operator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs) |
QDebug | operator<<(QDebug debug, const QOpcUaGenericStructValue &s) |
bool | operator==(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs) |
详细说明
此类持有通用的OPC UA结构体值,该值由具有值的命名字段组成,这些值可以是内置类型或其子类型,也可以是其他嵌套的通用结构体。还包含一些元信息,如类型ID和包含在此类对象中的类型的结构定义。
它用作解码结果的返回类型,也用作<根廷href="qopcuagenericstructhandler.html" translate="no">QOpcUaGenericStructHandler编码方法的输入类型。
对于具有可选字段的结构体,只在fields()列表中包含指定的字段。要编码时省略可选字段,它不应出现在fields()列表中。对于从联合类型派生的结构体,必须指定其中一个字段。解码类型的fields()列表中的唯一条目确定在类型定义中指定了哪个字段(如果有的话)。
示例
// Decode an extension object QOpcUaGenericStructValue value = decoder.decode(extensionObject, success); // Print the value of a mandatory field qDebug() << value.fields().value("MyField").value<QOpcUaLocalizedText>(); // Print the value of an optional field if (value.fields().contains("MyOptionalField")) qDebug() << value.fields().value("MyField").value<QOpcUaQualifiedName>(); // Get a nested struct for a field const auto unionMember = value.fields().value("MyUnionMember").value<QOpcUaGenericStructValue>(); // Print the specified field if (unionMember.fields().contains("UnionMember1")) qDebug() << unionMember.fields().value("UnionMember1").toInt(); else if (unionMember.fields().contains("UnionMember2")) qDebug() << unionMember.fields().value("UnionMember2").toDouble(); else qDebug() << "Empty union";
成员函数文档
QOpcUaGenericStructValue::QOpcUaGenericStructValue()
构造一个通用结构体值。
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition)
从typeName、typeId 和 definition 构造一个通用结构体值。
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition, const QHash<QString, QVariant> &fields)
从typeName、typeId、definition 和 fields 构造一个通用结构体值。
QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QOpcUaGenericStructValue &other)
从other 构造一个通用结构体值。
[noexcept]
QOpcUaGenericStructValue::QOpcUaGenericStructValue(QOpcUaGenericStructValue &&other)
从other 移构一个新通用结构体值。
注意:已移除的对象other 将处于部分组成状态,在这种情况下,唯一有效的操作是破坏和分配新的值。
[noexcept]
QOpcUaGenericStructValue::~QOpcUaGenericStructValue()
销毁此通用结构体值对象。
QHash<QString, QVariant> QOpcUaGenericStructValue::fields() const
返回此通用结构体值的字段。
另请参阅:setFields()。
QHash<QString, QVariant> &QOpcUaGenericStructValue::fieldsRef()
返回对此通用结构值字段的引用。
void QOpcUaGenericStructValue::setFields(const QHash<QString, QVariant> &fields)
将此通用结构值的字段设置为fields。
另请参阅 fields()。
void QOpcUaGenericStructValue::setStructureDefinition(const QOpcUaStructureDefinition &structureDefinition)
将此通用结构值的结构定义设置为structureDefinition。
另请参阅 structureDefinition()。
void QOpcUaGenericStructValue::setTypeId(const QString &typeId)
将此通用结构值的类型节点ID设置为typeId。
另请参阅 typeId()。
void QOpcUaGenericStructValue::setTypeName(const QString &typeName)
将此通用结构值的类型名称设置为typeName。
另请参阅 typeName()。
QOpcUaStructureDefinition QOpcUaGenericStructValue::structureDefinition() const
返回此通用结构值的结构定义。
另请参阅 setStructureDefinition()。
[noexcept]
void QOpcUaGenericStructValue::swap(QOpcUaGenericStructValue &other)
与另一个通用结构值对象other交换此通用结构值对象。此操作非常快速且永不失败。
QString QOpcUaGenericStructValue::toString() const
返回此通用结构值的字符串表示形式。
QString QOpcUaGenericStructValue::typeId() const
返回此通用结构值的类型节点ID。
另请参阅 setTypeId()。
QString QOpcUaGenericStructValue::typeName() const
返回此通用结构值的类型名称。
另请参阅 setTypeName()。
QVariant QOpcUaGenericStructValue::operator QVariant() const
返回包含此通用结构值的QVariant。
QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(const QOpcUaGenericStructValue &rhs)
将此泛型结构值中的 rhs 的值设置为。
[noexcept]
QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(QOpcUaGenericStructValue &&other)
移动赋值 other 到此 QOpcUaGenericStructValue 实例。
注意:已移除的对象other 将处于部分组成状态,在这种情况下,唯一有效的操作是破坏和分配新的值。
相关的非成员函数
[noexcept]
bool operator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)
如果 lhs 不等于 rhs,则返回 true
。
QDebug operator<<(QDebug debug, const QOpcUaGenericStructValue &s)
将 s 的字符串表示输出到 debug 中。
[noexcept]
bool operator==(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)
如果 lhs 等于 rhs,则返回 true
。
© 2024 Qt 公司有限公司。本文件中所包含的文档贡献是各自拥有者的版权。本文件中提供的文档是根据自由软件基金会公布的 GNU自由文档许可版1.3 许可的。Qt 和相应的标志是芬兰的 Qt 公司在其他国家和地区注册的商标。所有其他商标均为各自拥有者的财产。