QOpcUaGenericStructValue Class

汎用OPC UA構造化型の値を保持します。詳細...

Header: #include <QOpcUaGenericStructValue>
CMake: find_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmake: QT += opcua
Since: 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=(QOpcUaGenericStructValue &&other)
QOpcUaGenericStructValue &operator=(const QOpcUaGenericStructValue &rhs)
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や構造体定義のようなメタ情報も含まれます。

これは、デコード結果の戻り型や、QOpcUaGenericStructHandler のエンコーディングメソッドの入力型として使用されます。

オプション・フィールドを持つ構造体の場合、指定されたフィールドのみがfields() リストに含まれる。エンコード時にオプショナルフィールドを省略するには、fields ()リストに現れてはならない。Union型から派生した構造体の場合、フィールドは1つだけ指定する必要があります。デコードされた型の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)

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 を返します。

[noexcept] QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(QOpcUaGenericStructValue &&other)

Move-assignother をこのQOpcUaGenericStructValue インスタンスに割り当てます。

注意: 移動元のオブジェクトother は、部分的に形成された状態に置かれます。この状態では、有効な操作は破棄と新しい値の割り当てのみです。

QOpcUaGenericStructValue &QOpcUaGenericStructValue::operator=(const QOpcUaGenericStructValue &rhs)

この汎用構造体値にrhs の値を設定します。

関連する非メンバー

[noexcept] bool operator!=(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)

lhsrhs と等しくない場合はtrue を返す。

QDebug operator<<(QDebug debug, const QOpcUaGenericStructValue &s)

s の文字列表現をdebug に出力します。

[noexcept] bool operator==(const QOpcUaGenericStructValue &lhs, const QOpcUaGenericStructValue &rhs)

lhsrhs と等しい場合、true を返します。

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。