File indexing completed on 2024-04-28 15:33:19
0001 /* 0002 SPDX-FileCopyrightText: 2012-2013 Jan Grulich <jgrulich@redhat.com> 0003 0004 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 #ifndef NETWORKMANAGERQT_WIRELESS_SETTING_H 0008 #define NETWORKMANAGERQT_WIRELESS_SETTING_H 0009 0010 #include "setting.h" 0011 #include <networkmanagerqt/networkmanagerqt_export.h> 0012 0013 #include <QSharedPointer> 0014 #include <QStringList> 0015 0016 namespace NetworkManager 0017 { 0018 class WirelessSettingPrivate; 0019 0020 /** 0021 * Represents wireless setting 0022 */ 0023 class NETWORKMANAGERQT_EXPORT WirelessSetting : public Setting 0024 { 0025 public: 0026 typedef QSharedPointer<WirelessSetting> Ptr; 0027 typedef QList<Ptr> List; 0028 0029 enum NetworkMode { 0030 Infrastructure, 0031 Adhoc, 0032 Ap, 0033 }; 0034 0035 enum FrequencyBand { 0036 Automatic, 0037 A, 0038 Bg, 0039 }; 0040 0041 enum PowerSave { 0042 PowerSaveDefault = 0, 0043 PowerSaveIgnore = 1, 0044 PowerSaveDisable = 2, 0045 PowerSaveEnable = 3, 0046 }; 0047 0048 WirelessSetting(); 0049 explicit WirelessSetting(const Ptr &setting); 0050 ~WirelessSetting() override; 0051 0052 QString name() const override; 0053 0054 void setSsid(const QByteArray &ssid); 0055 QByteArray ssid() const; 0056 0057 void setMode(NetworkMode mode); 0058 NetworkMode mode() const; 0059 0060 void setBand(FrequencyBand band); 0061 FrequencyBand band() const; 0062 0063 void setChannel(quint32 channel); 0064 quint32 channel() const; 0065 0066 void setBssid(const QByteArray &bssid); 0067 QByteArray bssid() const; 0068 0069 void setRate(quint32 rate); 0070 quint32 rate() const; 0071 0072 void setTxPower(quint32 power); 0073 quint32 txPower() const; 0074 0075 void setAssignedMacAddress(const QString &assignedMacAddress); 0076 QString assignedMacAddress() const; 0077 0078 void setMacAddress(const QByteArray &address); 0079 QByteArray macAddress() const; 0080 0081 /// @deprecated since NM 1.4.0, will internally use assigned-mac-address property 0082 void setClonedMacAddress(const QByteArray &address); 0083 QByteArray clonedMacAddress() const; 0084 0085 void setGenerateMacAddressMask(const QString &macAddressMask); 0086 QString generateMacAddressMask() const; 0087 0088 void setMacAddressBlacklist(const QStringList &list); 0089 QStringList macAddressBlacklist() const; 0090 0091 void setMacAddressRandomization(MacAddressRandomization randomization); 0092 MacAddressRandomization macAddressRandomization() const; 0093 0094 void setMtu(quint32 mtu); 0095 quint32 mtu() const; 0096 0097 void setSeenBssids(const QStringList &list); 0098 QStringList seenBssids() const; 0099 0100 void setPowerSave(PowerSave powersave); 0101 PowerSave powerSave() const; 0102 0103 /// @deprecated since NM 1.0.0 0104 void setSecurity(const QString &security); 0105 QString security() const; 0106 0107 void setHidden(bool hidden); 0108 bool hidden() const; 0109 0110 void fromMap(const QVariantMap &setting) override; 0111 0112 QVariantMap toMap() const override; 0113 0114 protected: 0115 WirelessSettingPrivate *d_ptr; 0116 0117 private: 0118 Q_DECLARE_PRIVATE(WirelessSetting) 0119 }; 0120 0121 NETWORKMANAGERQT_EXPORT QDebug operator<<(QDebug dbg, const WirelessSetting &setting); 0122 0123 } 0124 0125 #endif // NETWORKMANAGERQT_WIRELESS_SETTING_H