1// Copyright (C) 2015 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 QOPCUAATTRIBUTEOPERAND_H
5#define QOPCUAATTRIBUTEOPERAND_H
6
7#include <QtOpcUa/qopcuaglobal.h>
8#include <QtOpcUa/qopcuatype.h>
9
10#include <QtCore/qshareddata.h>
11
12QT_BEGIN_NAMESPACE
13
14class QOpcUaRelativePathElement;
15
16class QVariant;
17class QOpcUaRelativePathElement;
18
19// OPC-UA part 4, 7.4.4.4
20class QOpcUaAttributeOperandData;
21class Q_OPCUA_EXPORT QOpcUaAttributeOperand
22{
23public:
24 QOpcUaAttributeOperand();
25 QOpcUaAttributeOperand(const QOpcUaAttributeOperand &);
26 QOpcUaAttributeOperand &operator=(const QOpcUaAttributeOperand &);
27 operator QVariant() const;
28 ~QOpcUaAttributeOperand();
29
30 QString nodeId() const;
31 void setNodeId(const QString &nodeId);
32
33 QString alias() const;
34 void setAlias(const QString &alias);
35
36 QList<QOpcUaRelativePathElement> browsePath() const;
37 QList<QOpcUaRelativePathElement> &browsePathRef();
38 void setBrowsePath(const QList<QOpcUaRelativePathElement> &browsePath);
39
40 QOpcUa::NodeAttribute attributeId() const;
41 void setAttributeId(QOpcUa::NodeAttribute attributeId);
42
43 QString indexRange() const;
44 void setIndexRange(const QString &indexRange);
45
46private:
47 QSharedDataPointer<QOpcUaAttributeOperandData> data;
48};
49
50QT_END_NAMESPACE
51
52Q_DECLARE_METATYPE(QOpcUaAttributeOperand)
53
54#endif // QOPCUAATTRIBUTEOPERAND_H
55

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