Crate opcua

source ·

Modules

  • The OPC UA Client module contains the functionality necessary for a client to connect to an OPC UA server, authenticate itself, send messages, receive responses, get values, browse the address space and provide callbacks for things to be propagated to the client.
  • The OPC UA Core module holds functionality that is common to server and clients that make use of OPC UA. It contains message chunking, cryptography / pki, communications and standard handshake messages.
  • Crypto related functionality. It is used for establishing trust between a client and server via certificate exchange and validation. It also used for encrypting / decrypting messages and signing messages.
  • The OPC UA Server module contains the server side functionality - address space, services, server security, session management, local discovery server registration and subscriptions.
  • The OPC UA Types module contains data types and enumerations for OPC UA.

Macros

  • See register_runtime_component
  • This macro is for debugging purposes - code register a running component (e.g. tokio task) when it starts and calls the corresponding deregister macro when it finishes. This enables the code to print out a list of components in existence at any time to ensure they were properly cleaned up.
  • Returns a vector of all currently existing runtime components as a vector of strings.
  • Tracing macro for obtaining a lock on a Mutex. Sometimes deadlocks can happen in code, and if they do, this macro is useful for finding out where they happened.
  • Tracing macro for obtaining a read lock on a RwLock.
  • Tracing macro for obtaining a write lock on a RwLock.