2 Copyright 2008 Will Stephenson <wstephenson@kde.org>
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) version 3, or any
8 later version accepted by the membership of KDE e.V. (or its
9 successor approved by the membership of KDE e.V.), which shall
10 act as a proxy defined in Section 6 of version 3 of the license.
12 This library is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 Lesser General Public License for more details.
17 You should have received a copy of the GNU Lesser General Public
18 License along with this library. If not, see <http://www.gnu.org/licenses/>.
21 #ifndef SOLIDCONTROL_IFACES_WIRELESSAP_H
22 #define SOLIDCONTROL_IFACES_WIRELESSAP_H
24 #include "../solid_control_export.h"
25 #include "../wirelessaccesspoint.h"
26 #include "../wirelessnetworkinterface.h"
35 * A wireless Access Point or another station acting in ad-hoc mode
37 class SOLIDCONTROLIFACES_EXPORT AccessPoint
: public QObject
41 AccessPoint(QObject
*);
45 virtual ~AccessPoint();
48 * Unique identifer for this access point
50 virtual QString
uni() const = 0;
53 * Flags describing the capabilities of the access point
55 virtual Solid::Control::AccessPoint::Capabilities
capabilities() const = 0;
58 * Flags describing the access point's capabilities according to WPA (Wifi Protected Access)
60 virtual Solid::Control::AccessPoint::WpaFlags
wpaFlags() const = 0;
63 * Flags describing the access point's capabilities according to RSN (Robust Secure Network)
66 virtual Solid::Control::AccessPoint::WpaFlags
rsnFlags() const = 0;
69 * The Service Set Identifier of the access point
71 virtual QString
ssid() const = 0;
74 * Retrieves the frequency in MHz of the radio channel that this access point is operating on
76 * @return the frequency
78 virtual uint
frequency() const = 0;
81 * The hardware address assigned to the access point's wireless interface, in hex-and-colon
84 virtual QString
hardwareAddress() const = 0;
87 * Retrieves the maximum bit rate currently attainable by this device.
89 * @return the maximum bitrate in kilobit/s
91 virtual uint
maxBitRate() const = 0;
94 * Retrieves the operation mode of this access point
96 * @return the current mode
97 * @see Solid::Control::WirelessNetworkInterface::OperationMode
99 virtual Solid::Control::WirelessNetworkInterface::OperationMode
mode() const = 0;
102 * Retrieves the current signal strength of this wifi network.
104 * @return the signal strength as a percentage
106 virtual int signalStrength() const = 0;
110 * This signal is emitted when the signal strength of this network has changed.
112 * @param strength the new signal strength value for this network
114 void signalStrengthChanged(int strength
);
117 * This signal is emitted when the bitrate of this network has changed.
119 * @param bitrate the new bitrate value for this network
121 void bitRateChanged(int bitrate
);
124 * This signal is emitted when the WPA flags in use by this access point change
126 * @param flags the new flags
128 void wpaFlagsChanged(Solid::Control::AccessPoint::WpaFlags flags
);
131 * This signal is emitted when the RSN(WPA2) flags in use by this access point change
133 * @param flags the new flags
135 void rsnFlagsChanged(Solid::Control::AccessPoint::WpaFlags flags
);
137 * This signal is emitted when the ssid of this Access Point changes
139 * @param ssid the new SSID
141 void ssidChanged(const QString
&ssid
);
144 * This signal is emitted when the frequency used by this Access Point changes
146 * @param frequency the new frequency
148 void frequencyChanged(uint frequency
);
154 Q_DECLARE_INTERFACE(Solid::Control::Ifaces::AccessPoint
, "org.kde.Solid.Control.Ifaces.AccessPoint/0.1")
156 #endif // SOLIDCONTROL_IFACES_WIRELESSAP_H