1/*
2 SPDX-FileCopyrightText: 2011 Ilia Kats <ilia-kats@gmx.net>
3 SPDX-FileCopyrightText: 2011-2013 Lamarque Souza <lamarque@kde.org>
4
5 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
6*/
7
8#ifndef NETWORKMANAGERQT_OLPCMESHDEVICE_H
9#define NETWORKMANAGERQT_OLPCMESHDEVICE_H
10
11#include "device.h"
12
13#include <networkmanagerqt/networkmanagerqt_export.h>
14
15namespace NetworkManager
16{
17class OlpcMeshDevicePrivate;
18
19/**
20 * A OLPC mesh interface
21 */
22class NETWORKMANAGERQT_EXPORT OlpcMeshDevice : public Device
23{
24 Q_OBJECT
25
26public:
27 typedef QSharedPointer<OlpcMeshDevice> Ptr;
28 typedef QList<Ptr> List;
29 /**
30 * Creates a new OlpcMeshDevice object.
31 *
32 * @param path the DBus path of the device
33 */
34 explicit OlpcMeshDevice(const QString &path, QObject *parent = nullptr);
35 /**
36 * Destroys a OlpcMeshDevice object.
37 */
38 ~OlpcMeshDevice() override;
39 /**
40 * Return the type
41 */
42 Type type() const override;
43 /**
44 * Currently active channel.
45 */
46 uint activeChannel() const;
47 /**
48 * The hardware address currently used by the network interface
49 */
50 QString hardwareAddress() const;
51 /**
52 * The current companion device.
53 */
54 Device::Ptr companionDevice() const;
55
56Q_SIGNALS:
57 /**
58 * The active channel changed.
59 */
60 void activeChannelChanged(uint);
61 /**
62 * The companion changed.
63 */
64 void companionChanged(const Device::Ptr &device);
65 /**
66 * The device changed its hardware address
67 */
68 void hardwareAddressChanged(const QString &);
69
70private:
71 Q_DECLARE_PRIVATE(OlpcMeshDevice)
72};
73
74} // namespace NetworkManager
75#endif // NETWORKMANAGERQT_OLPCMESHDEVICE_H
76

source code of networkmanager-qt/src/olpcmeshdevice.h