diff options
author | Jannis Voelker <jannis.voelker@basyskom.com> | 2018-12-18 11:24:06 +0100 |
---|---|---|
committer | Rainer Keller <Rainer.Keller@qt.io> | 2019-01-07 11:51:27 +0000 |
commit | ce11e1ad16b63817052ebd487c93499971b14602 (patch) | |
tree | 190d65676fec066f097831cfc5e468356aedf655 | |
parent | bbb4a2f9772cb2500b6fd68645be13c2f688dc4a (diff) |
Support the most recent open62541 release (v0.3.0)
Change-Id: Idd4177d4aa4af2f10028cc22dc0d31f6ae53ce91
Reviewed-by: Rainer Keller <Rainer.Keller@qt.io>
Reviewed-by: Frank Meerkoetter <frank.meerkoetter@basyskom.com>
-rw-r--r-- | config.tests/open62541/main.cpp | 2 | ||||
-rw-r--r-- | src/plugins/opcua/open62541/qopen62541.h | 2 | ||||
-rw-r--r-- | tests/open62541-testserver/main.cpp | 2 | ||||
-rw-r--r-- | tests/open62541-testserver/testserver.cpp | 9 | ||||
-rw-r--r-- | tests/open62541-testserver/testserver.h | 2 |
5 files changed, 12 insertions, 5 deletions
diff --git a/config.tests/open62541/main.cpp b/config.tests/open62541/main.cpp index 9749033..478f54e 100644 --- a/config.tests/open62541/main.cpp +++ b/config.tests/open62541/main.cpp @@ -35,7 +35,7 @@ ****************************************************************************/ #include <stdio.h> -#include "open62541/open62541.h" +#include "open62541.h" int main(int argc, char *argv[]) { diff --git a/src/plugins/opcua/open62541/qopen62541.h b/src/plugins/opcua/open62541/qopen62541.h index c8a55a7..c4e0f4e 100644 --- a/src/plugins/opcua/open62541/qopen62541.h +++ b/src/plugins/opcua/open62541/qopen62541.h @@ -49,7 +49,7 @@ #pragma clang diagnostic ignored "-Wunused-parameter" #endif -#include <open62541/open62541.h> +#include <open62541.h> #if defined(_MSC_VER) #pragma warning(pop) diff --git a/tests/open62541-testserver/main.cpp b/tests/open62541-testserver/main.cpp index bbd51a8..cec96c9 100644 --- a/tests/open62541-testserver/main.cpp +++ b/tests/open62541-testserver/main.cpp @@ -207,7 +207,7 @@ int main(int argc, char **argv) const QVector<quint32> arrayDimensions({2, 2, 3}); const QVariantList value({0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0}); server.addVariable(testFolder, "ns=2;s=Demo.Static.Arrays.MultiDimensionalDouble", "MultiDimensionalDoubleTest", - QOpcUa::QMultiDimensionalArray(value, arrayDimensions), QOpcUa::Types::Double, QVector<quint32>({2, 2, 3})); + QOpcUa::QMultiDimensionalArray(value, arrayDimensions), QOpcUa::Types::Double, QVector<quint32>({2, 2, 3}), 3); // Add folders for relative nodes const UA_NodeId testFolder2 = server.addFolder("ns=3;s=TestFolder2", "TestFolder2"); diff --git a/tests/open62541-testserver/testserver.cpp b/tests/open62541-testserver/testserver.cpp index d83694d..c3760c4 100644 --- a/tests/open62541-testserver/testserver.cpp +++ b/tests/open62541-testserver/testserver.cpp @@ -215,7 +215,7 @@ UA_NodeId TestServer::addVariableWithWriteMask(const UA_NodeId &folder, const QS } UA_NodeId TestServer::addVariable(const UA_NodeId &folder, const QString &variableNode, const QString &name, const QVariant &value, - QOpcUa::Types type, QVector<quint32> arrayDimensions) + QOpcUa::Types type, QVector<quint32> arrayDimensions, int valueRank) { UA_NodeId variableNodeId = Open62541Utils::nodeIdFromQString(variableNode); @@ -223,6 +223,7 @@ UA_NodeId TestServer::addVariable(const UA_NodeId &folder, const QString &variab UA_VariableAttributes attr = UA_VariableAttributes_default; attr.value = QOpen62541ValueConverter::toOpen62541Variant(value, type); + attr.valueRank = valueRank; attr.displayName = UA_LOCALIZEDTEXT_ALLOC("en-US", name.toUtf8().constData()); attr.dataType = attr.value.type ? attr.value.type->typeId : UA_TYPES[UA_TYPES_BOOLEAN].typeId; attr.accessLevel = UA_ACCESSLEVELMASK_READ | UA_ACCESSLEVELMASK_WRITE; @@ -272,9 +273,15 @@ UA_NodeId TestServer::addEmptyArrayVariable(const UA_NodeId &folder, const QStri attr.dataType = UA_TYPES[UA_TYPES_BOOLEAN].typeId; attr.accessLevel = UA_ACCESSLEVELMASK_READ; attr.valueRank = 1; + attr.arrayDimensionsSize = 1; + attr.arrayDimensions = UA_UInt32_new(); + *attr.arrayDimensions = 1; attr.value.arrayLength = 0; attr.value.type = &UA_TYPES[UA_TYPES_BOOLEAN]; attr.value.data = UA_EMPTY_ARRAY_SENTINEL; + attr.value.arrayDimensionsSize = 1; + attr.value.arrayDimensions = UA_UInt32_new(); + *attr.value.arrayDimensions = 1; UA_QualifiedName variableName; variableName.namespaceIndex = variableNodeId.namespaceIndex; diff --git a/tests/open62541-testserver/testserver.h b/tests/open62541-testserver/testserver.h index 2cebfd9..4c95359 100644 --- a/tests/open62541-testserver/testserver.h +++ b/tests/open62541-testserver/testserver.h @@ -60,7 +60,7 @@ public: UA_NodeId addObject(const UA_NodeId &folderId, int namespaceIndex, const QString &objectName = QString()); UA_NodeId addVariable(const UA_NodeId &folder, const QString &variableNode, const QString &name, const QVariant &value, - QOpcUa::Types type, QVector<quint32> arrayDimensions = QVector<quint32>()); + QOpcUa::Types type, QVector<quint32> arrayDimensions = QVector<quint32>(), int valueRank = UA_VALUERANK_ANY); UA_NodeId addVariableWithWriteMask(const UA_NodeId &folder, const QString &variableNode, const QString &name, const QVariant &value, QOpcUa::Types type, quint32 writeMask); UA_NodeId addEmptyArrayVariable(const UA_NodeId &folder, const QString &variableNode, const QString &name); |