ua_nodestore.c 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. #include "ua_nodestore.h"
  2. #include "ua_util.h"
  3. #include "ua_statuscodes.h"
  4. UA_StatusCode UA_NodeStore_registerAddNodesOperation(UA_NodeStore *nodeStore, UA_NodeStore_addNodes addNodes)
  5. {
  6. if(nodeStore==UA_NULL){
  7. return UA_STATUSCODE_BADNOTFOUND;
  8. }
  9. nodeStore->addNodes = addNodes;
  10. return UA_STATUSCODE_GOOD;
  11. }
  12. UA_StatusCode UA_NodeStore_registerAddReferencesOperation(UA_NodeStore *nodeStore, UA_NodeStore_addReferences addReferences)
  13. {
  14. if(nodeStore==UA_NULL){
  15. return UA_STATUSCODE_BADNOTFOUND;
  16. }
  17. nodeStore->addReferences = addReferences;
  18. return UA_STATUSCODE_GOOD;
  19. }
  20. UA_StatusCode UA_NodeStore_registerDeleteNodesOperation(UA_NodeStore *nodeStore, UA_NodeStore_deleteNodes deleteNodes)
  21. {
  22. if(nodeStore==UA_NULL){
  23. return UA_STATUSCODE_BADNOTFOUND;
  24. }
  25. nodeStore->deleteNodes = deleteNodes;
  26. return UA_STATUSCODE_GOOD;
  27. }
  28. UA_StatusCode UA_NodeStore_registerDeleteReferencesOperation(UA_NodeStore *nodeStore, UA_NodeStore_deleteReferences deleteReferences)
  29. {
  30. if(nodeStore==UA_NULL){
  31. return UA_STATUSCODE_BADNOTFOUND;
  32. }
  33. nodeStore->deleteReferences = deleteReferences;
  34. return UA_STATUSCODE_GOOD;
  35. }
  36. UA_StatusCode UA_NodeStore_registerReadNodesOperation(UA_NodeStore *nodeStore, UA_NodeStore_readNodes readNodes)
  37. {
  38. if(nodeStore==UA_NULL){
  39. return UA_STATUSCODE_BADNOTFOUND;
  40. }
  41. nodeStore->readNodes = readNodes;
  42. return UA_STATUSCODE_GOOD;
  43. }
  44. UA_StatusCode UA_NodeStore_registerWriteNodesOperation(UA_NodeStore *nodeStore, UA_NodeStore_writeNodes writeNodes)
  45. {
  46. if(nodeStore==UA_NULL){
  47. return UA_STATUSCODE_BADNOTFOUND;
  48. }
  49. nodeStore->writeNodes = writeNodes;
  50. return UA_STATUSCODE_GOOD;
  51. }
  52. UA_StatusCode UA_NodeStore_registerBrowseNodesOperation(UA_NodeStore *nodeStore, UA_NodeStore_browseNodes browseNodes)
  53. {
  54. if(nodeStore==UA_NULL){
  55. return UA_STATUSCODE_BADNOTFOUND;
  56. }
  57. nodeStore->browseNodes = browseNodes;
  58. return UA_STATUSCODE_GOOD;
  59. }
  60. /*
  61. UA_Boolean UA_NodeStore_nodeExists(UA_NodeStore* nodestore, const UA_NodeId *nodeId)
  62. {
  63. UA_DataValue *value;
  64. UA_ReadValueId readValueId;
  65. readValueId.attributeId = UA_ATTRIBUTEWRITEMASK_NODEID;
  66. readValueId.nodeId = nodeId;
  67. readValueId.indexRange.data = UA_NULL;
  68. readValueId.indexRange.length = 0;
  69. UA_NodeStore_readNode r;
  70. if(nodestore->readNodes(nodeId,readValueId,&value) == UA_SUCCESS &&
  71. value->value.storage.data.dataPtr != UA_NULL){
  72. return UA_TRUE;
  73. }
  74. return UA_FALSE;
  75. }
  76. */