From 0012cb312e92c33f5263478d318eb82da22ee879 Mon Sep 17 00:00:00 2001 From: Thomas Vanbesien Date: Fri, 20 Feb 2026 10:41:09 +0100 Subject: Rename classes to OpcUa* prefix, replace BobinkNode with OpcUaMonitoredNode boilerplate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rename BobinkAuth → OpcUaAuth, BobinkClient → OpcUaClient (C++ class names only; QML module URI and singleton name stay as Bobink). Remove BobinkNode (QQuickItem-based) and add OpcUaMonitoredNode skeleton using QObject + QQmlParserStatus, following Qt convention for non-visual QML types. --- src/OpcUaAuth.h | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 src/OpcUaAuth.h (limited to 'src/OpcUaAuth.h') diff --git a/src/OpcUaAuth.h b/src/OpcUaAuth.h new file mode 100644 index 0000000..8d53c1d --- /dev/null +++ b/src/OpcUaAuth.h @@ -0,0 +1,75 @@ +/** + * @file OpcUaAuth.h + * @brief QML component for OPC UA authentication configuration. + */ +#ifndef OPCUAAUTH_H +#define OPCUAAUTH_H + +#include +#include +#include + +class OpcUaAuth : public QObject +{ + Q_OBJECT + QML_ELEMENT + + Q_PROPERTY (AuthMode mode READ mode WRITE setMode NOTIFY modeChanged) + Q_PROPERTY ( + QString username READ username WRITE setUsername NOTIFY usernameChanged) + Q_PROPERTY ( + QString password READ password WRITE setPassword NOTIFY passwordChanged) + Q_PROPERTY ( + QString certPath READ certPath WRITE setCertPath NOTIFY certPathChanged) + Q_PROPERTY ( + QString keyPath READ keyPath WRITE setKeyPath NOTIFY keyPathChanged) + +public: + /// Authentication modes supported by OPC UA. + enum AuthMode + { + Anonymous, + UserPass, + Certificate + }; + Q_ENUM (AuthMode) + + explicit OpcUaAuth (QObject *parent = nullptr); + + AuthMode mode () const; + void setMode (AuthMode mode); + + QString username () const; + void setUsername (const QString &username); + + QString password () const; + void setPassword (const QString &password); + + QString certPath () const; + void setCertPath (const QString &path); + + QString keyPath () const; + void setKeyPath (const QString &path); + + /** + * @brief Build a QOpcUaAuthenticationInformation from the + * current mode and credentials. + */ + QOpcUaAuthenticationInformation toAuthenticationInformation () const; + +signals: + void modeChanged (); + void usernameChanged (); + void passwordChanged (); + void certPathChanged (); + void keyPathChanged (); + +private: + AuthMode m_mode = Anonymous; + QString m_username; + QString m_password; + QString m_certPath; + QString m_keyPath; +}; + +#endif // OPCUAAUTH_H -- cgit v1.2.3