DtkNetworkManager
NetworkManager DBus interface binding for Qt
dtunsetting.h
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DTUNSETTING_H
6#define DTUNSETTING_H
7
8#include "dnmsetting.h"
9#include <QString>
10
11DNETWORKMANAGER_BEGIN_NAMESPACE
12
13class DTunSettingPrivate;
14
15class DTunSetting : public DNMSetting
16{
17public:
18 enum class Mode {
19 Tun,
20 Tap,
21 };
22
24 explicit DTunSetting(const QSharedPointer<DTunSetting> &other);
25 ~DTunSetting() override = default;
26
27 QString name() const override;
28
29 void setGroup(const QString &group);
30 QString group() const;
31
32 void setMode(Mode mode);
33 Mode mode() const;
34
35 void setMultiQueue(bool multiQueue);
36 bool multiQueue() const;
37
38 void setOwner(const QString &owner);
39 QString owner() const;
40
41 void setPi(bool pi);
42 bool pi() const;
43
44 void setVnetHdr(bool vnetHdr);
45 bool vnetHdr() const;
46
47 void fromMap(const QVariantMap &setting) override;
48
49 QVariantMap toMap() const override;
50
51protected:
52 QScopedPointer<DTunSettingPrivate> d_ptr;
53
54private:
55 Q_DECLARE_PRIVATE(DTunSetting)
56};
57
58DNETWORKMANAGER_END_NAMESPACE
59
60#endif
DNMSetting类
Definition: dnmsetting.h:26
Definition: dtunsetting.h:16