QOpcUaBinaryDataEncoding Class
QOpcUaBinaryDataEncoding は、OPC UA part 6に記述されているOPC UAバイナリデータエンコーディングの部分的な実装です。詳細...
ヘッダ | #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() |
詳細説明
qmake は、拡張オブジェクトを読み書きするためのデータをエンコードおよびデコードするためのテンプレート関数を提供します。
以下の型がサポートされています:
Qt タイプ | OPC UA型 |
---|---|
quint8 | uint8 |
qint8 | int8 |
quint16 | uint16 |
qint16 | int16 |
quint32 | uint32 |
qint32 | int32 |
quint64 | uint64 |
qint64 | int64 |
float | float |
double | double |
QString | 文字列 |
QOpcUaQualifiedName | 修飾名 |
QOpcUaLocalizedText | LocalizedText |
QOpcUaEUInformation | EU情報 |
QOpcUaRange | 範囲 |
QOpcUaComplexNumber | 複素数 |
QOpcUaDoubleComplexNumber | ダブル複素数 |
QOpcUaAxisInformation | 軸情報 |
QOpcUaXValue | XV |
QUuid | GUID |
QString ノードID | NodeId |
QByteArray | バイト文字列 |
QDateTime | 日付 |
QOpcUa::UaStatusCode | ステータスコード |
QOpcUaExpandedNodeId | 拡張ノードID |
QOpcUaExtensionObject | 拡張オブジェクト |
QOpcUaArgument | 引数 |
QOpcUaDiagnosticInfo (Qt 6.7 以降) | 診断情報 |
QOpcUaApplicationRecordDataType | ApplicationRecordDataType |
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)
true
データ・バッファからT型の配列をデコードする。デコードに成功した場合はsuccess 、失敗した場合は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() を呼び出すことで、エンコード失敗後のロールバックに使用できます。
© 2025 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.