1// Copyright (C) 2018 basysKom GmbH, opensource@basyskom.com
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QOPCUAREFERENCEDESCRIPTION_H
5#define QOPCUAREFERENCEDESCRIPTION_H
6
7#include <QtOpcUa/qopcuatype.h>
8
9#include <QtCore/qshareddata.h>
10
11QT_BEGIN_NAMESPACE
12
13class QOpcUaExpandedNodeId;
14class QOpcUaQualifiedName;
15class QOpcUaLocalizedText;
16
17class QOpcUaReferenceDescriptionPrivate;
18class Q_OPCUA_EXPORT QOpcUaReferenceDescription
19{
20public:
21 QOpcUaReferenceDescription();
22 QOpcUaReferenceDescription(const QOpcUaReferenceDescription &other);
23 QOpcUaReferenceDescription &operator=(const QOpcUaReferenceDescription &other);
24
25 ~QOpcUaReferenceDescription();
26
27 QString refTypeId() const;
28 void setRefTypeId(const QString &refTypeId);
29 QOpcUaExpandedNodeId targetNodeId() const;
30 void setTargetNodeId(const QOpcUaExpandedNodeId &targetNodeId);
31 QOpcUaQualifiedName browseName() const;
32 void setBrowseName(const QOpcUaQualifiedName &browseName);
33 QOpcUaLocalizedText displayName() const;
34 void setDisplayName(const QOpcUaLocalizedText &displayName);
35 QOpcUa::NodeClass nodeClass() const;
36 void setNodeClass(QOpcUa::NodeClass nodeClass);
37 void setIsForwardReference(bool isForwardReference);
38 bool isForwardReference() const;
39 void setTypeDefinition(const QOpcUaExpandedNodeId &typeDefinition);
40 QOpcUaExpandedNodeId typeDefinition() const;
41
42private:
43 QSharedDataPointer<QOpcUaReferenceDescriptionPrivate> d_ptr;
44};
45
46Q_DECLARE_TYPEINFO(QOpcUaReferenceDescription, Q_MOVABLE_TYPE);
47
48QT_END_NAMESPACE
49
50Q_DECLARE_METATYPE(QOpcUaReferenceDescription)
51
52#endif // QOPCUAREFERENCEDESCRIPTION_H
53

source code of qtopcua/src/opcua/client/qopcuareferencedescription.h