xref: /OK3568_Linux_fs/app/forlinx/flapp/src/libs/core/systemmanager.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*这个单例类处理比较杂乱,以后会重设计.
2  */
3 #ifndef SYSTEMHANDLER_H
4 #define SYSTEMHANDLER_H
5 #include <QString>
6 #include <QStringList>
7 #include "core_global.h"
8 
9 class CORE_LIBRARY  SystemManager
10 {
11 public:
12     static SystemManager *instance();
13     static void detoryInstance();
14 
15     void setPlatformInfo(const QString name);
16     QString platformInfo();
17 
18     QStringList getDNS();
19     void setDNS(const QString &dns);
20 
21     void setGateway(const QString &gateway);
22     QString getGateway();
23 
24     void setNetwork(const QString &cardName, const QString &ip, const QString &mask);
25     void getNetwork(const QString &cardName, QString &ip, QString &mask);
26 
27     void getMemInfo(QString &memTotal, QString &memFree,  QString &memAvailable);
28 
29     void getKernalInfo(QString &version);
30 
31     void getStoargeInfo(QString &info);
32 
33     void getCpuInfo(QString &info);
34 
35     SystemManager();
36 
37     //从 字符串 s中 匹配 pattern 正则形式的结果字符串.
38     QStringList getMatch(const QString &s, const QString &pattern);
39 private:
40     QStringList getIPs(const QString &data);
41 
42 private:
43     static SystemManager *m_instance;
44     QString m_platformName;
45 };
46 
47 #endif
48