NetworkManagerQt

bridgedevice.h
1 /*
2  SPDX-FileCopyrightText: 2013 Jan Grulich <[email protected]>
3 
4  SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5 */
6 
7 #ifndef NETWORKMANAGERQT_BRIDGE_DEVICE_H
8 #define NETWORKMANAGERQT_BRIDGE_DEVICE_H
9 
10 #include "device.h"
11 #include <networkmanagerqt/networkmanagerqt_export.h>
12 
13 namespace NetworkManager
14 {
15 class BridgeDevicePrivate;
16 
17 /**
18  * A bridge device interface
19  */
20 class NETWORKMANAGERQT_EXPORT BridgeDevice : public Device
21 {
22  Q_OBJECT
23  Q_PROPERTY(bool carrier READ carrier NOTIFY carrierChanged)
24  Q_PROPERTY(QString hwAddress READ hwAddress NOTIFY hwAddressChanged)
25  Q_PROPERTY(QStringList slaves READ slaves NOTIFY slavesChanged)
26 
27 public:
29  typedef QList<Ptr> List;
30  explicit BridgeDevice(const QString &path, QObject *parent = nullptr);
31  ~BridgeDevice() override;
32 
33  Type type() const override;
34 
35  /**
36  * Indicates whether the physical carrier is found
37  */
38  bool carrier() const;
39  /**
40  * Hardware address of the device
41  */
42  QString hwAddress() const;
43  /**
44  * Array of object paths representing devices which are currently slaved to this device
45  */
46  QStringList slaves() const;
47 
48 Q_SIGNALS:
49  /**
50  * Emitted when the carrier of this device has changed
51  */
52  void carrierChanged(bool plugged);
53  /**
54  * Emitted when the hardware address of this device has changed
55  */
56  void hwAddressChanged(const QString &address);
57  /**
58  * Emitted when the slaves of this device have changed
59  */
60  void slavesChanged(const QStringList &slaves);
61 
62 private:
63  Q_DECLARE_PRIVATE(BridgeDevice)
64 };
65 
66 }
67 
68 #endif
This class represents a common device interface.
Definition: device.h:33
This class allows querying the underlying system to discover the available network interfaces and rea...
Definition: accesspoint.h:20
Type
Device type.
Definition: device.h:177
A bridge device interface.
Definition: bridgedevice.h:20
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Oct 3 2023 03:57:05 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.