ソースを参照

Fix "First steps with open62541-client" tutorial (#643)

* Fix Tutorial_client_firstSteps

Eddited client tutorial, basic client exmpale did not compile
- Changed dir sturcture to be sorted correctly
- Added include to basic client example
- Removed Logger_Stdout parameter from UA_Client_new
- Removed UA_ClientCOnnectionTCP from UA_Client_connect

* Fix client tutorial raw time example

* Added libs: "ua_config_standard.h", <inttypes.h>
* Removed parameters from calls: UA_Client_new, UA_Client_connect

* Update tutorial_client_firstSteps.rst

* Updated client tutorial

*Fix example 3
    *Remove logger header
    *Add config and inttypes header
    *Change parameters of client creation
*Unified space/tab usage, 2 spaces seemed predominant

* Update tutorial_server_firstSteps.rst

Unified space usage
Maikel van Vliet 8 年 前
コミット
821974f16d
共有2 個のファイルを変更した64 個の追加61 個の削除を含む
  1. 51 48
      doc/tutorial_client_firstSteps.rst
  2. 13 13
      doc/tutorial_server_firstSteps.rst

+ 51 - 48
doc/tutorial_client_firstSteps.rst

@@ -132,46 +132,47 @@ Let us extend the client with with an action reading node's value:
 .. code-block:: c
 
     #include <stdio.h>
-    #include <stdio.h>
     
     #include "ua_types.h"
     #include "ua_server.h"
-    #include "logger_stdout.h"
+    //#include "logger_stdout.h"
     #include "networklayer_tcp.h"
+    #include "ua_config_standard.h"
+    #include <inttypes.h>
     
     int main(void) {
-      UA_Client *client = UA_Client_new(UA_ClientConfig_standard, Logger_Stdout);
-      UA_StatusCode retval = UA_Client_connect(client, UA_ClientConnectionTCP,"opc.tcp://localhost:16664");
+      UA_Client *client = UA_Client_new(UA_ClientConfig_standard);
+      UA_StatusCode retval = UA_Client_connect(client,"opc.tcp://localhost:16664");
       if(retval != UA_STATUSCODE_GOOD) {
         UA_Client_delete(client);
         return retval;
       }
-    
+      
       //variable to store data
       UA_DateTime raw_date = 0;
-    
+      
       UA_ReadRequest rReq;
       UA_ReadRequest_init(&rReq);
       rReq.nodesToRead = UA_Array_new(1, &UA_TYPES[UA_TYPES_READVALUEID]);
       rReq.nodesToReadSize = 1;
       rReq.nodesToRead[0].nodeId = UA_NODEID_NUMERIC(0, 2258);
       rReq.nodesToRead[0].attributeId = UA_ATTRIBUTEID_VALUE;
-    
+      
       UA_ReadResponse rResp = UA_Client_Service_read(client, rReq);
       if(rResp.responseHeader.serviceResult == UA_STATUSCODE_GOOD &&
-         rResp.resultsSize > 0 && rResp.results[0].hasValue &&
-         UA_Variant_isScalar(&rResp.results[0].value) &&
-         rResp.results[0].value.type == &UA_TYPES[UA_TYPES_DATETIME]) {
-             raw_date = *(UA_DateTime*)rResp.results[0].value.data;
-             printf("raw date is: %" PRId64 "\n", raw_date);
+        rResp.resultsSize > 0 && rResp.results[0].hasValue &&
+        UA_Variant_isScalar(&rResp.results[0].value) &&
+        rResp.results[0].value.type == &UA_TYPES[UA_TYPES_DATETIME]) {
+         raw_date = *(UA_DateTime*)rResp.results[0].value.data;
+         printf("raw date is: %" PRId64 "\n", raw_date);
       }
-    
+      
       UA_ReadRequest_deleteMembers(&rReq);
       UA_ReadResponse_deleteMembers(&rResp);
-    
+      
       UA_Client_disconnect(client);
       UA_Client_delete(client);
-      return 0;
+      return UA_STATUSCODE_GOOD;
     }
 
 You should see raw time in milliseconds since January 1, 1601 UTC midnight::
@@ -189,46 +190,48 @@ As the last step for this tutorial, we are going to convert the raw date value i
     
     #include "ua_types.h"
     #include "ua_server.h"
-    #include "logger_stdout.h"
+    //#include "logger_stdout.h"
     #include "networklayer_tcp.h"
+    #include "ua_config_standard.h"
+    #include <inttypes.h>
     
     int main(void) {
-        UA_Client *client = UA_Client_new(UA_ClientConfig_standard, Logger_Stdout);
-        UA_StatusCode retval = UA_Client_connect(client, UA_ClientConnectionTCP, "opc.tcp://localhost:16664");
-        if(retval != UA_STATUSCODE_GOOD) {
-          UA_Client_delete(client);
-          return retval;
-        }
-      
-        //variables to store data
-        UA_DateTime raw_date = 0;
-        UA_String string_date;
+      UA_Client *client = UA_Client_new(UA_ClientConfig_standard);
+      UA_StatusCode retval = UA_Client_connect(client, "opc.tcp://localhost:16664");
+      if(retval != UA_STATUSCODE_GOOD) {
+        UA_Client_delete(client);
+        return retval;
+      }
       
-        UA_ReadRequest rReq;
-        UA_ReadRequest_init(&rReq);
-        rReq.nodesToRead = UA_Array_new(1, &UA_TYPES[UA_TYPES_READVALUEID]);
-        rReq.nodesToReadSize = 1;
-        rReq.nodesToRead[0].nodeId = UA_NODEID_NUMERIC(0, 2258);
-        rReq.nodesToRead[0].attributeId = UA_ATTRIBUTEID_VALUE;
+      //variables to store data
+      UA_DateTime raw_date = 0;
+      UA_String string_date;
+    
+      UA_ReadRequest rReq;
+      UA_ReadRequest_init(&rReq);
+      rReq.nodesToRead = UA_Array_new(1, &UA_TYPES[UA_TYPES_READVALUEID]);
+      rReq.nodesToReadSize = 1;
+      rReq.nodesToRead[0].nodeId = UA_NODEID_NUMERIC(0, 2258);
+      rReq.nodesToRead[0].attributeId = UA_ATTRIBUTEID_VALUE;
       
-        UA_ReadResponse rResp = UA_Client_Service_read(client, rReq);
-        if(rResp.responseHeader.serviceResult == UA_STATUSCODE_GOOD &&
-            rResp.resultsSize > 0 && rResp.results[0].hasValue &&
-            UA_Variant_isScalar(&rResp.results[0].value) &&
-            rResp.results[0].value.type == &UA_TYPES[UA_TYPES_DATETIME]) {
-          raw_date = *(UA_DateTime*)rResp.results[0].value.data;
-          printf("raw date is: %" PRId64 "\n", raw_date);
-          string_date = UA_DateTime_toString(raw_date);
-          printf("string date is: %.*s\n", (int)string_date.length, string_date.data);
-        }
+      UA_ReadResponse rResp = UA_Client_Service_read(client, rReq);
+      if(rResp.responseHeader.serviceResult == UA_STATUSCODE_GOOD &&
+          rResp.resultsSize > 0 && rResp.results[0].hasValue &&
+          UA_Variant_isScalar(&rResp.results[0].value) &&
+          rResp.results[0].value.type == &UA_TYPES[UA_TYPES_DATETIME]) {
+        raw_date = *(UA_DateTime*)rResp.results[0].value.data;
+        printf("raw date is: %" PRId64 "\n", raw_date);
+        string_date = UA_DateTime_toString(raw_date);
+        printf("string date is: %.*s\n", (int)string_date.length, string_date.data);
+      }
       
-        UA_ReadRequest_deleteMembers(&rReq);
-        UA_ReadResponse_deleteMembers(&rResp);
-        UA_String_deleteMembers(&string_date);
+      UA_ReadRequest_deleteMembers(&rReq);
+      UA_ReadResponse_deleteMembers(&rResp);
+      UA_String_deleteMembers(&string_date);
       
-        UA_Client_disconnect(client);
-        UA_Client_delete(client);
-        return UA_STATUSCODE_GOOD;
+      UA_Client_disconnect(client);
+      UA_Client_delete(client);
+      return UA_STATUSCODE_GOOD;
     }
 
 Note that this file can be found as "examples/client_firstSteps.c" in the repository.

+ 13 - 13
doc/tutorial_server_firstSteps.rst

@@ -186,24 +186,24 @@ We will also make a slight change to our server: We want it to exit cleanly when
 
     UA_Boolean running = true;
     static void stopHandler(int signal) {
-        running = false;
+      running = false;
     }
     
     int main(void) {
-        signal(SIGINT,  stopHandler);
-        signal(SIGTERM, stopHandler);
+      signal(SIGINT,  stopHandler);
+      signal(SIGTERM, stopHandler);
     
-        UA_ServerConfig config = UA_ServerConfig_standard;
-        UA_ServerNetworkLayer nl = UA_ServerNetworkLayerTCP(UA_ConnectionConfig_standard, 16664, Logger_Stdout);
-        config.logger = Logger_Stdout;
-        config.networkLayers = &nl;
-        config.networkLayersSize = 1;
-        UA_Server *server = UA_Server_new(config);
+      UA_ServerConfig config = UA_ServerConfig_standard;
+      UA_ServerNetworkLayer nl = UA_ServerNetworkLayerTCP(UA_ConnectionConfig_standard, 16664, Logger_Stdout);
+      config.logger = Logger_Stdout;
+      config.networkLayers = &nl;
+      config.networkLayersSize = 1;
+      UA_Server *server = UA_Server_new(config);
     
-        UA_StatusCode retval = UA_Server_run(server, &running);
-        UA_Server_delete(server);
-        nl.deleteMembers(&nl);
-        return retval;
+      UA_StatusCode retval = UA_Server_run(server, &running);
+      UA_Server_delete(server);
+      nl.deleteMembers(&nl);
+      return retval;
     }
 
 Note that this file can be found as "examples/server_firstSteps.c" in the repository.