NetworkManagerQt

wimaxdevice.h
1 /*
2  SPDX-FileCopyrightText: 2011 Ilia Kats <[email protected]>
3  SPDX-FileCopyrightText: 2011-2013 Lamarque V. Souza <[email protected]>
4  SPDX-FileCopyrightText: 2013 Daniel Nicoletti <[email protected]>
5 
6  SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
7 */
8 
9 #ifndef NETWORKMANAGERQT_WIMAXDEVICE_H
10 #define NETWORKMANAGERQT_WIMAXDEVICE_H
11 
12 #include <networkmanagerqt/networkmanagerqt_export.h>
13 
14 #include "device.h"
15 #include "wimaxnsp.h"
16 
17 #include <QDBusObjectPath>
18 
19 namespace NetworkManager
20 {
21 class WimaxDevicePrivate;
22 
23 /**
24  * Wimax network interface
25  */
26 class NETWORKMANAGERQT_EXPORT WimaxDevice : public Device
27 {
28  Q_OBJECT
29 
30 public:
32  typedef QList<Ptr> List;
33 
34  /**
35  * Creates a new WimaxDevice object.
36  *
37  * @param path the DBus path of the device
38  */
39  explicit WimaxDevice(const QString &path, QObject *parent = nullptr);
40  /**
41  * Destroys a WimaxDevice object.
42  */
43  ~WimaxDevice() override;
44  /**
45  * Return the type
46  */
47  Type type() const override;
48  /**
49  * List of network service providers currently visible to the hardware
50  */
51  QStringList nsps() const;
52  /**
53  * Identifier of the NSP this interface is currently associated with
54  */
55  WimaxNsp::Ptr activeNsp() const;
56  /**
57  * The ID of the serving base station as received from the network.
58  */
59  QString bsid() const;
60  /**
61  * The hardware address currently used by the network interface
62  */
63  QString hardwareAddress() const;
64  /**
65  * Center frequency (in KHz) of the radio channel the device is using to communicate with the network when connected.
66  */
67  uint centerFrequency() const;
68  /**
69  * CINR (Carrier to Interference + Noise Ratio) of the current radio link in dB.
70  */
71  int cinr() const;
72  /**
73  * RSSI of the current radio link in dBm. This value indicates how strong the raw received RF signal from the base station is, but does not indicate the
74  * overall quality of the radio link.
75  */
76  int rssi() const;
77  /**
78  * Average power of the last burst transmitted by the device, in units of 0.5 dBm. i.e. a TxPower of -11 represents an actual device TX power of -5.5 dBm.
79  */
80  int txPower() const;
81 
82  /**
83  * Finds NSP object given its Unique Network Identifier.
84  *
85  * @param uni the identifier of the AP to find from this network interface
86  * @returns a valid WimaxNsp object if a network having the given UNI for this device is known to the system, 0 otherwise
87  */
88  NetworkManager::WimaxNsp::Ptr findNsp(const QString &uni) const;
89 
90 Q_SIGNALS:
91  /**
92  * This signal is emitted when the bitrate of this network has changed.
93  *
94  * @param bitrate the new bitrate value for this network
95  */
96  void bitRateChanged(int bitrate);
97  /**
98  * The active NSP changed.
99  */
100  void activeNspChanged(const QString &);
101  /**
102  * The BSID changed.
103  */
104  void bsidChanged(const QString &);
105  /**
106  * The device changed its hardware address
107  */
108  void hardwareAddressChanged(const QString &);
109  /**
110  * The device changed its center frequency
111  */
112  void centerFrequencyChanged(uint);
113  /**
114  * The device changed its signal/noise ratio
115  */
116  void cinrChanged(int);
117  /**
118  * The device changed its RSSI
119  */
120  void rssiChanged(int);
121  /**
122  * The device changed its TxPower.
123  */
124  void txPowerChanged(int);
125  /**
126  * A new NSP appeared
127  */
128  void nspAppeared(const QString &);
129  /**
130  * A wireless access point disappeared
131  */
132  void nspDisappeared(const QString &);
133 
134 private:
135  Q_DECLARE_PRIVATE(WimaxDevice)
136 };
137 
138 } // namespace NetworkManager
139 #endif // NETWORKMANAGERQT_WIMAXDEVICE_H
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
Wimax network interface.
Definition: wimaxdevice.h:26
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.