diff options
Diffstat (limited to 'src/imports/opcua/opcuaconnection.h')
-rw-r--r-- | src/imports/opcua/opcuaconnection.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/imports/opcua/opcuaconnection.h b/src/imports/opcua/opcuaconnection.h index a072a65..4fdd2ed 100644 --- a/src/imports/opcua/opcuaconnection.h +++ b/src/imports/opcua/opcuaconnection.h @@ -61,6 +61,7 @@ class OpcUaConnection : public QObject Q_PROPERTY(QStringList supportedSecurityPolicies READ supportedSecurityPolicies CONSTANT) Q_PROPERTY(QJSValue supportedUserTokenTypes READ supportedUserTokenTypes CONSTANT) Q_PROPERTY(QOpcUaEndpointDescription currentEndpoint READ currentEndpoint) + Q_PROPERTY(QOpcUaClient* connection READ connection WRITE setConnection NOTIFY connectionChanged) public: OpcUaConnection(QObject *parent = nullptr); @@ -82,11 +83,14 @@ public: QStringList supportedSecurityPolicies() const; QJSValue supportedUserTokenTypes() const; + QOpcUaClient *connection() const; + public slots: void connectToEndpoint(const QOpcUaEndpointDescription &endpointDescription); void disconnectFromEndpoint(); void setDefaultConnection(bool defaultConnection = true); void setAuthenticationInformation(const QOpcUaAuthenticationInformation &authenticationInformation); + void setConnection(QOpcUaClient *client); signals: void availableBackendsChanged(); @@ -96,6 +100,7 @@ signals: void namespacesChanged(); void readNodeAttributesFinished(const QVariant &value); void writeNodeAttributesFinished(const QVariant &value); + void connectionChanged(); private slots: void clientStateHandler(QOpcUaClient::ClientState state); @@ -103,6 +108,9 @@ private slots: void handleWriteNodeAttributesFinished(const QVector<QOpcUaWriteResult> &results); private: + void removeConnection(); + void setupConnection(); + QOpcUaClient *m_client = nullptr; bool m_connected = false; static OpcUaConnection* m_defaultConnection; |