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 QOPCUABROWSEREQUEST_H
5#define QOPCUABROWSEREQUEST_H
6
7#include <QtOpcUa/qopcuatype.h>
8
9#include <QtCore/qshareddata.h>
10
11QT_BEGIN_NAMESPACE
12
13class QOpcUaBrowseRequestData;
14class Q_OPCUA_EXPORT QOpcUaBrowseRequest
15{
16public:
17
18 enum class BrowseDirection : quint32 {
19 Forward = 0,
20 Inverse = 1,
21 Both = 2
22 };
23
24 QOpcUaBrowseRequest();
25 QOpcUaBrowseRequest(const QOpcUaBrowseRequest &other);
26 QOpcUaBrowseRequest &operator=(const QOpcUaBrowseRequest &rhs);
27 ~QOpcUaBrowseRequest();
28
29 QOpcUaBrowseRequest::BrowseDirection browseDirection() const;
30 void setBrowseDirection(const QOpcUaBrowseRequest::BrowseDirection &browseDirection);
31
32 QString referenceTypeId() const;
33 void setReferenceTypeId(const QString &referenceTypeId);
34 void setReferenceTypeId(QOpcUa::ReferenceTypeId referenceTypeId);
35
36 bool includeSubtypes() const;
37 void setIncludeSubtypes(bool includeSubtypes);
38
39 QOpcUa::NodeClasses nodeClassMask() const;
40 void setNodeClassMask(const QOpcUa::NodeClasses &nodeClassMask);
41
42private:
43 QSharedDataPointer<QOpcUaBrowseRequestData> data;
44};
45
46QT_END_NAMESPACE
47
48Q_DECLARE_METATYPE(QOpcUaBrowseRequest)
49
50#endif // QOPCUABROWSEREQUEST_H
51

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