Sur cette page

QOpcUaBinaryDataEncoding Class

QOpcUaBinaryDataEncoding est une implémentation partielle de l'encodage de données binaires OPC UA décrit dans la partie 6 d'OPC UA. Plus d'informations...

En-tête : #include <QOpcUaBinaryDataEncoding>
CMake : find_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmake : QT += opcua

Fonctions publiques

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()

Description détaillée

Il offre des fonctions modèles pour le codage et le décodage des données pour la lecture et l'écriture d'objets d'extension.

Les types suivants sont pris en charge :

Type QtType OPC UA
quint8uint8
qint8int8
quint16uint16
qint16int16
quint32uint32
qint32int32
quint64uint64
qint64int64
floatflottant
doubledouble
QStringchaîne
QOpcUaQualifiedNameNom qualifié
QOpcUaLocalizedTextTexte localisé
QOpcUaEUInformationEUInformation
QOpcUaRangeGamme
QOpcUaComplexNumberComplexNumber
QOpcUaDoubleComplexNumberDoubleComplexNumber
QOpcUaAxisInformationInformation sur l'axe
QOpcUaXValueXV
QUuidGUID
QString ID du nœudNodeId
QByteArrayChaîne d'octets
QDateTimeDateTime
QOpcUa::UaStatusCodeCode d'état
QOpcUaExpandedNodeIdExpandedNodeId
QOpcUaExtensionObjectExtensionObject
QOpcUaArgumentArgument
QOpcUaDiagnosticInfo (depuis Qt 6.7)DiagnosticInfo
QOpcUaApplicationRecordDataTypeApplicationRecordDataType
QOpcUaStructureDefinition (depuis Qt 6.7)StructureDefintion
QOpcUaStructureField (depuis Qt 6.7)StructureField
QOpcUaEnumDefinition (depuis Qt 6.7)EnumDefintion
QOpcUaEnumField (depuis Qt 6.7)EnumField
QOpcUaVariant (depuis Qt 6.7)Variant
QOpcUaDataValue (depuis Qt 6.7)DataValue

Documentation des fonctions membres

QOpcUaBinaryDataEncoding::QOpcUaBinaryDataEncoding(QByteArray *buffer)

Construit un objet de codage de données binaires pour le tampon de données buffer. buffer ne doit pas être supprimé tant que cet objet de codage de données binaires est utilisé.

QOpcUaBinaryDataEncoding::QOpcUaBinaryDataEncoding(QOpcUaExtensionObject &object)

Construit un objet de codage de données binaires en utilisant le corps codé de object comme tampon de données.

object ne doit pas être supprimé tant que cet objet de codage de données binaires est utilisé.

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

Décode une valeur scalaire de type T à partir du tampon de données. success prend la valeur true si le décodage a réussi, false dans le cas contraire.

La valeur décodée est renvoyée. Si success est faux, la valeur renvoyée est invalide.

Voir aussi decodeArray().

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

Décode un tableau de type T à partir du tampon de données. success est mis à true si le décodage a réussi, false dans le cas contraire.

La valeur décodée est renvoyée. Si success est faux, la valeur retournée est invalide.

Voir aussi decode().

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

Encode src de type T et ajoute la valeur encodée au tampon de données. Retourne true si la valeur a été encodée avec succès.

Voir aussi encodeArray().

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

Encode tous les éléments de type T dans src et ajoute les valeurs encodées au tampon de données.

Retourne true si la valeur a été encodée avec succès.

Voir aussi encode().

int QOpcUaBinaryDataEncoding::offset() const

Renvoie le décalage actuel dans le tampon de données.

Voir aussi setOffset().

void QOpcUaBinaryDataEncoding::setOffset(int offset)

Définit le décalage actuel dans le tampon de données à offset. Le premier octet du tampon a le décalage 0.

Voir aussi offset().

void QOpcUaBinaryDataEncoding::truncateBufferToOffset()

Tronque le tampon de données à la valeur actuelle offset(). Si le décalage est inférieur à la taille actuelle du tampon, cette méthode ne fait rien.

Cette méthode peut être utilisée pour revenir en arrière après un encodage infructueux en définissant l'ancien offset et en appelant truncateBufferToOffset().

© 2026 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.