QOpcUaBinaryDataEncoding Class

QOpcUaBinaryDataEncoding は、OPC UA part 6に記述されているOPC UAバイナリデータエンコーディングの部分的な実装です。詳細...

Header: #include <QOpcUaBinaryDataEncoding>
CMake: find_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmake: QT += opcua

パブリック関数

QOpcUaBinaryDataEncoding(QByteArray *buffer)
QOpcUaBinaryDataEncoding(QOpcUaExtensionObject &object)
T decode(bool &success)
QList<T> decodeArray(bool &success)
bool encode(const T &src)
bool encodeArray(const QList<T> &src)
int offset() const
void setOffset(int offset)
void truncateBufferToOffset()

詳細説明

拡張オブジェクトを読み書きするためのデータをエンコードおよびデコードするためのテンプレート関数を提供します。

以下の型がサポートされています:

QtタイプOPC UA型
quint8uint8
qint8int8
quint16uint16
qint16int16
quint32uint32
qint32int32
quint64uint64
qint64int64
floatfloat
doubledouble
QString文字列
QOpcUaQualifiedName修飾名
QOpcUaLocalizedTextLocalizedText
QOpcUaEUInformationEU情報
QOpcUaRange範囲
QOpcUaComplexNumber複素数
QOpcUaDoubleComplexNumberダブル複素数
QOpcUaAxisInformation軸情報
QOpcUaXValueXV
QUuidGUID
QString ノードIDNodeId
QByteArrayバイト文字列
QDateTime日付
QOpcUa::UaStatusCodeステータスコード
QOpcUaExpandedNodeId拡張ノードID
QOpcUaExtensionObject拡張オブジェクト
QOpcUaArgument引数
QOpcUaDiagnosticInfo (Qt 6.7 以降)診断情報
QOpcUaApplicationRecordDataTypeApplicationRecordDataType
QOpcUaStructureDefinition (Qt 6.7 以降)構造体定義
QOpcUaStructureField (Qt 6.7 以降)構造体フィールド
QOpcUaEnumDefinition (Qt 6.7 以降)列挙型定義
QOpcUaEnumField (Qt 6.7 以降)列挙型フィールド
QOpcUaVariant (Qt 6.7 以降)バリアント
QOpcUaDataValue (Qt 6.7 以降)データ値

メンバー関数 ドキュメント

QOpcUaBinaryDataEncoding::QOpcUaBinaryDataEncoding(QByteArray *buffer)

データバッファbuffer のバイナリデータエンコーディングオブジェクトを構築します。buffer は、このバイナリデータエンコーディングオブジェクトが使われている限り、削除してはいけません。

QOpcUaBinaryDataEncoding::QOpcUaBinaryDataEncoding(QOpcUaExtensionObject &object)

object のエンコードされたボディをデータ・バッファとして用いてバイナリ・データ・エンコード・オブジェクトを構築する。

object このバイナリ・データ・エンコード・オブジェクトが使用されている限り、削除してはならない。

template <typename T, QOpcUa::Types OVERLAY = QOpcUa::Types::Undefined> T QOpcUaBinaryDataEncoding::decode(bool &success)

true データ・バッファからT型のスカラー値をデコードする。デコードに成功した場合はsuccess 、失敗した場合はfalse

デコードされた値が返される。success が偽の場合、返される値は無効である。

decodeArray()も参照のこと

template <typename T, QOpcUa::Types OVERLAY = QOpcUa::Types::Undefined> QList<T> QOpcUaBinaryDataEncoding::decodeArray(bool &success)

データ・バッファからT型の配列をデコードする。success は、デコードに成功した場合はtrue にセットされ、失敗した場合はfalse にセットされる。

デコードされた値が返される。success が偽の場合、返される値は無効である。

decode()も参照のこと

template <typename T, QOpcUa::Types OVERLAY = QOpcUa::Types::Undefined> bool QOpcUaBinaryDataEncoding::encode(const T &src)

T 型のsrc をエンコードし、エンコードされた値をデータ・バッファに追加する。値のエンコードに成功した場合はtrue を返します。

encodeArray()も参照の こと。

template <typename T, QOpcUa::Types OVERLAY = QOpcUa::Types::Undefined> bool QOpcUaBinaryDataEncoding::encodeArray(const QList<T> &src)

T 型のすべての要素をsrc でエンコードし、エンコードされた値をデータバッファに追加する。

値のエンコードに成功した場合はtrue を返す。

encode()も参照のこと

int QOpcUaBinaryDataEncoding::offset() const

データ・バッファ内の現在のオフセットを返します。

setOffset() も参照

void QOpcUaBinaryDataEncoding::setOffset(int offset)

データ・バッファ内の現在のオフセットをoffset に設定します。 バッファ内の最初のバイトのオフセットは 0 です。

offset()も参照して ください。

void QOpcUaBinaryDataEncoding::truncateBufferToOffset()

データ・バッファを現在のoffset() に切り捨てます。オフセットが現在のバッファ・サイズより遅れている場合、このメソッドは何も行いません。

このメソッドは、古いオフセットを設定して truncateBufferToOffset() を呼び出すことで、エンコード失敗後のロールバックに使用できます。

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