DtkNetworkManager
NetworkManager DBus interface binding for Qt
dactiveconnection.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2022 - 2023 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DACTIVECONNECTION_H
6#define DACTIVECONNECTION_H
7
10#include <QUuid>
11
12DNETWORKMANAGER_BEGIN_NAMESPACE
13
14class DActiveConnectionPrivate;
15
16class DActiveConnection : public QObject
17{
18 Q_OBJECT
19public:
20 explicit DActiveConnection(const quint64 activeConnId, QObject *parent = nullptr);
21 explicit DActiveConnection(DActiveConnectionPrivate &other, QObject *parent = nullptr);
22 ~DActiveConnection() override;
23
24 Q_PROPERTY(QList<quint64> devices READ devices NOTIFY devicesChanged)
25 Q_PROPERTY(bool vpn READ vpn NOTIFY vpnChanged)
26 Q_PROPERTY(quint64 connection READ connection NOTIFY connectionChanged)
27 Q_PROPERTY(quint64 DHCP4Config READ DHCP4Config NOTIFY DHCP4ConfigChanged)
28 Q_PROPERTY(quint64 DHCP6Config READ DHCP6Config NOTIFY DHCP6ConfigChanged)
29 Q_PROPERTY(quint64 IP4Config READ IP4Config NOTIFY IP4ConfigChanged)
30 Q_PROPERTY(quint64 IP6Config READ IP6Config NOTIFY IP6ConfigChanged)
31 Q_PROPERTY(quint64 specificObject READ specificObject NOTIFY specificObjectChanged)
32 Q_PROPERTY(QString connectionId READ connectionId NOTIFY connectionIdChanged)
33 Q_PROPERTY(DNMSetting::SettingType connectionType READ connectionType NOTIFY connectionTypeChanged)
34 Q_PROPERTY(QUuid UUID READ UUID NOTIFY UUIDChanged)
35 Q_PROPERTY(NMActiveConnectionState connectionState READ connectionState NOTIFY connectionStateChanged)
36
37 QList<quint64> devices() const;
38 bool vpn() const;
39 quint64 connection() const;
40 quint64 DHCP4Config() const;
41 quint64 DHCP6Config() const;
42 quint64 IP4Config() const;
43 quint64 IP6Config() const;
44 quint64 specificObject() const;
45 QString connectionId() const;
46 DNMSetting::SettingType connectionType() const;
47 QUuid UUID() const;
48 NMActiveConnectionState connectionState() const;
49
50Q_SIGNALS:
51 void devicesChanged(const QList<quint64> &devices);
52 void vpnChanged(const bool vpn);
53 void connectionChanged(const quint64 &connection);
54 void DHCP4ConfigChanged(const quint64 &config);
55 void DHCP6ConfigChanged(const quint64 &config);
56 void IP4ConfigChanged(const quint64 &config);
57 void IP6ConfigChanged(const quint64 &config);
58 void specificObjectChanged(const quint64 &specObj);
59 void connectionIdChanged(const QString &id);
60 void connectionTypeChanged(const DNMSetting::SettingType type);
61 void UUIDChanged(const QUuid &UUID);
62 void connectionStateChanged(const NMActiveConnectionState state, const NMActiveConnectionStateReason reason);
63
64protected:
65 QScopedPointer<DActiveConnectionPrivate> d_ptr;
66
67private:
68 Q_DECLARE_PRIVATE(DActiveConnection)
69};
70
71DNETWORKMANAGER_END_NAMESPACE
72
73#endif
对于活动连接属性的封装
Definition: dactiveconnection.h:17
DNMSetting类
Definition: dnmsetting.h:26
NMActiveConnectionStateReason
活动连接状态改变的原因
Definition: dnetworkmanagertypes.h:35
NMActiveConnectionState
指示特定网络连接的状态
Definition: dnetworkmanagertypes.h:33