diff --git a/Open62541Cpp/UA_NodeId.cpp b/Open62541Cpp/UA_NodeId.cpp index a7c528d..ccacb94 100644 --- a/Open62541Cpp/UA_NodeId.cpp +++ b/Open62541Cpp/UA_NodeId.cpp @@ -36,6 +36,12 @@ UA_NodeId::UA_NodeId(const UA_UInt16 nsIndex, const UA_UInt32 identifier) : UA_N NodeId->identifier.numeric = identifier; } +UA_NodeId::UA_NodeId(const UA_UInt16 nsIndex, const UA_Guid identifier) : UA_NodeId() { + NodeId->identifierType = UA_NODEIDTYPE_GUID; + NodeId->namespaceIndex = nsIndex; + NodeId->identifier.guid = identifier; +} + UA_NodeId::UA_NodeId(::UA_NodeId *nodeId, bool takeOwnership) { if (takeOwnership) { NodeId = nodeId; diff --git a/Open62541Cpp/UA_NodeId.hpp b/Open62541Cpp/UA_NodeId.hpp index d9c5648..0006722 100644 --- a/Open62541Cpp/UA_NodeId.hpp +++ b/Open62541Cpp/UA_NodeId.hpp @@ -23,7 +23,7 @@ class UA_NodeId { UA_NodeId(::UA_NodeId *nodeId, bool takeOwnership); UA_NodeId(UA_UInt16 nsIndex, std::string identifier); UA_NodeId(UA_UInt16 nsIndex, UA_UInt32 identifier); - + UA_NodeId(UA_UInt16 nsIndex, UA_Guid identifier); static UA_NodeId FromConstNodeId(const ::UA_NodeId *nodeId); /// Do a copy