QOpcUaGenericStructValue 类

包含一个通用 OPC UA 结构类型的值。 更多...

头文件 #include <QOpcUaGenericStructValue>
CMakefind_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmakeQT += 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()
voidsetFields(const QHash<QString, QVariant> &fields)
voidsetStructureDefinition(const QOpcUaStructureDefinition &structureDefinition)
voidsetTypeId(const QString &typeId)
voidsetTypeName(const QString &typeName)
QOpcUaStructureDefinitionstructureDefinition() const
voidswap(QOpcUaGenericStructValue &other)
QStringtoString() const
QStringtypeId() const
QStringtypeName() const
QVariantoperator QVariant() const
QOpcUaGenericStructValue &operator=(const QOpcUaGenericStructValue &rhs)
QOpcUaGenericStructValue &operator=(QOpcUaGenericStructValue &&other)
booloperator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)
QDebugoperator<<(QDebug debug, const QOpcUaGenericStructValue &s)
booloperator==(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)

typeNametypeIddefinition 构造一个通用结构体值。

QOpcUaGenericStructValue::QOpcUaGenericStructValue(const QString &typeName, const QString &typeId, const QOpcUaStructureDefinition &definition, const QHash<QString, QVariant> &fields)

typeNametypeIddefinitionfields 构造一个通用结构体值。

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 公司在其他国家和地区注册的商标。所有其他商标均为各自拥有者的财产。