UA_StatusCode UA_VariableNode_copy(const UA_VariableNode *src, UA_VariableNode *dst) { UA_VariableNode_init(dst); UA_StatusCode retval = UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); dst->valueRank = src->valueRank; dst->valueSource = src->valueSource; if(src->valueSource == UA_VALUESOURCE_VARIANT) retval = UA_Variant_copy(&src->value.variant, &dst->value.variant); else dst->value.dataSource = src->value.dataSource; if(retval) { UA_VariableNode_deleteMembers(dst); return retval; } dst->accessLevel = src->accessLevel; dst->userAccessLevel = src->accessLevel; dst->minimumSamplingInterval = src->minimumSamplingInterval; dst->historizing = src->historizing; return UA_STATUSCODE_GOOD; }
UA_StatusCode UA_DataTypeNode_copy(const UA_DataTypeNode *src, UA_DataTypeNode *dst) { dst->isAbstract = src->isAbstract; return UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); }
UA_StatusCode UA_ViewNode_copy(const UA_ViewNode *src, UA_ViewNode *dst) { dst->containsNoLoops = src->containsNoLoops; dst->eventNotifier = src->eventNotifier; return UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); }
UA_StatusCode UA_ObjectTypeNode_copy(const UA_ObjectTypeNode *src, UA_ObjectTypeNode *dst) { dst->isAbstract = src->isAbstract; dst->instanceManagement = src->instanceManagement; return UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); }
UA_StatusCode UA_ObjectNode_copy(const UA_ObjectNode *src, UA_ObjectNode *dst) { dst->eventNotifier = src->eventNotifier; dst->instanceHandle = src->instanceHandle; return UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); }
UA_StatusCode UA_MethodNode_copy(const UA_MethodNode *src, UA_MethodNode *dst) { dst->executable = src->executable; dst->userExecutable = src->userExecutable; return UA_Node_copy((const UA_Node*)src, (UA_Node*)dst); }