|
1 /* |
|
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * |
|
5 * This program is free software: you can redistribute it and/or modify |
|
6 * it under the terms of the GNU Lesser General Public License as published by |
|
7 * the Free Software Foundation, version 2.1 of the License. |
|
8 * |
|
9 * This program is distributed in the hope that it will be useful, |
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
12 * GNU Lesser General Public License for more details. |
|
13 * |
|
14 * You should have received a copy of the GNU Lesser General Public License |
|
15 * along with this program. If not, |
|
16 * see "http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html/". |
|
17 * |
|
18 * Description: |
|
19 * |
|
20 */ |
|
21 |
|
22 #ifndef XQSYSINFO_H |
|
23 #define XQSYSINFO_H |
|
24 |
|
25 // INCLUDES |
|
26 #include <QObject> |
|
27 #include "sysinfo_global.h" |
|
28 |
|
29 // FORWARD DECLARATIONS |
|
30 class XQSysInfoPrivate; |
|
31 |
|
32 // CLASS DECLARATION |
|
33 class XQSYSINFO_EXPORT XQSysInfo : public QObject |
|
34 { |
|
35 Q_OBJECT |
|
36 |
|
37 public: |
|
38 |
|
39 enum Error { |
|
40 NoError = 0, |
|
41 OutOfMemoryError, |
|
42 IncorrectDriveError, |
|
43 DriveNotFoundError, |
|
44 UnknownError = -1 |
|
45 }; |
|
46 |
|
47 enum Drive { |
|
48 DriveA, DriveB, DriveC, DriveD, DriveE, |
|
49 DriveF, DriveG, DriveH, DriveI, DriveJ, |
|
50 DriveK, DriveL, DriveM, DriveN, DriveO, |
|
51 DriveP, DriveQ, DriveR, DriveS, DriveT, |
|
52 DriveU, DriveV, DriveW, DriveX, DriveY, |
|
53 DriveZ |
|
54 }; |
|
55 |
|
56 enum Language { |
|
57 LangEnglish = 1, |
|
58 LangFrench = 2, |
|
59 LangGerman = 3, |
|
60 LangSpanish = 4, |
|
61 LangItalian = 5, |
|
62 LangSwedish = 6, |
|
63 LangDanish = 7, |
|
64 LangNorwegian = 8, |
|
65 LangFinnish = 9, |
|
66 LangAmerican = 10, |
|
67 LangSwissFrench = 11, |
|
68 LangSwissGerman = 12, |
|
69 LangPortuguese = 13, |
|
70 LangTurkish = 14, |
|
71 LangIcelandic = 15, |
|
72 LangRussian = 16, |
|
73 LangHungarian = 17, |
|
74 LangDutch = 18, |
|
75 LangBelgianFlemish = 19, |
|
76 LangAustralian = 20, |
|
77 LangBelgianFrench = 21, |
|
78 LangAustrian = 22, |
|
79 LangNewZealand = 23, |
|
80 LangInternationalFrench = 24, |
|
81 LangCzech = 25, |
|
82 LangSlovak = 26, |
|
83 LangPolish = 27, |
|
84 LangSlovenian = 28, |
|
85 LangTaiwanChinese = 29, |
|
86 LangHongKongChinese = 30, |
|
87 LangPrcChinese = 31, |
|
88 LangJapanese = 32, |
|
89 LangThai = 33, |
|
90 LangAfrikaans = 34, |
|
91 LangAlbanian = 35, |
|
92 LangAmharic = 36, |
|
93 LangArabic = 37, |
|
94 LangArmenian = 38, |
|
95 LangTagalog = 39, |
|
96 LangBelarussian = 40, |
|
97 LangBengali = 41, |
|
98 LangBulgarian = 42, |
|
99 LangBurmese = 43, |
|
100 LangCatalan = 44, |
|
101 LangCroatian = 45, |
|
102 LangCanadianEnglish = 46, |
|
103 LangInternationalEnglish = 47, |
|
104 LangSouthAfricanEnglish = 48, |
|
105 LangEstonian = 49, |
|
106 LangFarsi = 50, |
|
107 LangCanadianFrench = 51, |
|
108 LangScotsGaelic = 52, |
|
109 LangGeorgian = 53, |
|
110 LangGreek = 54, |
|
111 LangCyprusGreek = 55, |
|
112 LangGujarati = 56, |
|
113 LangHebrew = 57, |
|
114 LangHindi = 58, |
|
115 LangIndonesian = 59, |
|
116 LangIrish = 60, |
|
117 LangSwissItalian = 61, |
|
118 LangKannada = 62, |
|
119 LangKazakh = 63, |
|
120 LangKhmer = 64, |
|
121 LangKorean = 65, |
|
122 LangLao = 66, |
|
123 LangLatvian = 67, |
|
124 LangLithuanian = 68, |
|
125 LangMacedonian = 69, |
|
126 LangMalay = 70, |
|
127 LangMalayalam = 71, |
|
128 LangMarathi = 72, |
|
129 LangMoldavian = 73, |
|
130 LangMongolian = 74, |
|
131 LangNorwegianNynorsk = 75, |
|
132 LangBrazilianPortuguese = 76, |
|
133 LangPunjabi = 77, |
|
134 LangRomanian = 78, |
|
135 LangSerbian = 79, |
|
136 LangSinhalese = 80, |
|
137 LangSomali = 81, |
|
138 LangInternationalSpanish = 82, |
|
139 LangLatinAmericanSpanish = 83, |
|
140 LangSwahili = 84, |
|
141 LangFinlandSwedish = 85, |
|
142 LangReserved1 = 86, |
|
143 LangTamil = 87, |
|
144 LangTelugu = 88, |
|
145 LangTibetan = 89, |
|
146 LangTigrinya = 90, |
|
147 LangCyprusTurkish = 91, |
|
148 LangTurkmen = 92, |
|
149 LangUkrainian = 93, |
|
150 LangUrdu = 94, |
|
151 LangReserved2 = 95, |
|
152 LangVietnamese = 96, |
|
153 LangWelsh = 97, |
|
154 LangZulu = 98, |
|
155 LangOther = 99, |
|
156 LangManufacturerEnglish = 100, |
|
157 LangSouthSotho = 101, |
|
158 LangBasque = 102, |
|
159 LangGalician = 103, |
|
160 LangJavanese = 104, |
|
161 LangMaithili = 105, |
|
162 LangAzerbaijani_Latin = 106, |
|
163 LangAzerbaijani_Cyrillic = 107, |
|
164 LangOriya = 108, |
|
165 LangBhojpuri = 109, |
|
166 LangSundanese = 110, |
|
167 LangKurdish_Latin = 111, |
|
168 LangKurdish_Arabic = 112, |
|
169 LangPashto = 113, |
|
170 LangHausa = 114, |
|
171 LangOromo = 115, |
|
172 LangUzbek_Latin = 116, |
|
173 LangUzbek_Cyrillic = 117, |
|
174 LangSindhi_Arabic = 118, |
|
175 LangSindhi_Devanagari = 119, |
|
176 LangYoruba = 120, |
|
177 LangCebuano = 121, |
|
178 LangIgbo = 122, |
|
179 LangMalagasy = 123, |
|
180 LangNepali = 124, |
|
181 LangAssamese = 125, |
|
182 LangShona = 126, |
|
183 LangZhuang = 127, |
|
184 LangMadurese = 128, |
|
185 LangEnglish_Apac=129, |
|
186 LangEnglish_Taiwan=157, |
|
187 LangEnglish_HongKong=158, |
|
188 LangEnglish_Prc=159, |
|
189 LangEnglish_Japan=160, |
|
190 LangEnglish_Thailand=161, |
|
191 LangFulfulde = 162, |
|
192 LangTamazight = 163, |
|
193 LangBolivianQuechua = 164, |
|
194 LangPeruQuechua = 165, |
|
195 LangEcuadorQuechua = 166, |
|
196 LangTajik_Cyrillic = 167, |
|
197 LangTajik_PersoArabic = 168, |
|
198 LangNyanja = 169, |
|
199 LangHaitianCreole = 170, |
|
200 LangLombard = 171, |
|
201 LangKoongo = 172, |
|
202 LangAkan = 173, |
|
203 LangHmong = 174, |
|
204 LangYi = 175, |
|
205 LangTshiluba = 176, |
|
206 LangIlocano = 177, |
|
207 LangUyghur = 178, |
|
208 LangNeapolitan = 179, |
|
209 LangRwanda = 180, |
|
210 LangXhosa = 181, |
|
211 LangBalochi = 182, |
|
212 LangMinangkabau = 184, |
|
213 LangMakhuwa = 185, |
|
214 LangSantali = 186, |
|
215 LangGikuyu = 187, |
|
216 LangMoore = 188, |
|
217 LangGuarani = 189, |
|
218 LangRundi = 190, |
|
219 LangRomani_Latin = 191, |
|
220 LangRomani_Cyrillic = 192, |
|
221 LangTswana = 193, |
|
222 LangKanuri = 194, |
|
223 LangKashmiri_Devanagari = 195, |
|
224 LangKashmiri_PersoArabic = 196, |
|
225 LangUmbundu = 197, |
|
226 LangKonkani = 198, |
|
227 LangBalinese = 199, |
|
228 LangNorthernSotho = 200, |
|
229 LangWolof = 201, |
|
230 LangBemba = 202, |
|
231 LangTsonga = 203, |
|
232 LangYiddish = 204, |
|
233 LangKirghiz = 205, |
|
234 LangGanda = 206, |
|
235 LangSoga = 207, |
|
236 LangMbundu = 208, |
|
237 LangBambara = 209, |
|
238 LangCentralAymara = 210, |
|
239 LangZarma = 211, |
|
240 LangLingala = 212, |
|
241 LangBashkir = 213, |
|
242 LangChuvash = 214, |
|
243 LangSwati = 215, |
|
244 LangTatar = 216, |
|
245 LangSouthernNdebele = 217, |
|
246 LangSardinian = 218, |
|
247 LangScots = 219, |
|
248 LangMeitei = 220, |
|
249 LangWalloon = 221, |
|
250 LangKabardian = 222, |
|
251 LangMazanderani = 223, |
|
252 LangGilaki = 224, |
|
253 LangShan = 225, |
|
254 LangLuyia = 226, |
|
255 LanguageLuo = 227, |
|
256 LangSukuma = 228, |
|
257 LangAceh = 229, |
|
258 LangMalay_Apac=326, |
|
259 }; |
|
260 |
|
261 XQSysInfo(QObject* parent = 0); |
|
262 ~XQSysInfo(); |
|
263 |
|
264 XQSysInfo::Language currentLanguage() const; |
|
265 QString imei() const; |
|
266 QString model() const; |
|
267 QString manufacturer() const; |
|
268 QString softwareVersion() const; |
|
269 |
|
270 uint batteryLevel() const; |
|
271 QString imsi() const; |
|
272 int signalStrength() const; |
|
273 qlonglong diskSpace(XQSysInfo::Drive drive) const; |
|
274 bool isDiskSpaceCritical(XQSysInfo::Drive drive) const; |
|
275 bool isNetwork() const; |
|
276 int memory() const; |
|
277 QString browserVersion() const; |
|
278 |
|
279 static bool isSupported(int featureId); |
|
280 |
|
281 XQSysInfo::Error error() const; |
|
282 |
|
283 Q_SIGNALS: |
|
284 void networkSignalChanged(ulong signalStrength); |
|
285 void batteryLevelChanged(uint batteryLevel); |
|
286 |
|
287 private: |
|
288 friend class XQSysInfoPrivate; |
|
289 XQSysInfoPrivate* d; |
|
290 }; |
|
291 |
|
292 #endif /*XQSYSINFO_H*/ |
|
293 |
|
294 // End of file |