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