xref: /OK3568_Linux_fs/app/forlinx/flapp/src/plugins/network/inetwork.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 #ifndef INETWORK_H
2 #define INETWORK_H
3 #include<QString>
4 
5 class  INetwork
6 {
7 public:
8     virtual ~INetwork();
9     virtual void setAuto(const QString &cardname)=0;
10     virtual void setStatic(const QString &cardname, const QString &ip, const QString &mask, const QString &gateway, const QString &dns)=0;
11     virtual QString exec() =0;
12     virtual QString pathName() =0;
13 
14     static INetwork* guessCreate();
15     static QString broadCast(const QString &ip, const QString &mask);
16     static QString getMaskBits(const QString &mask);
17 
18 protected:
19     QString filter(const QString &cardName);
20     virtual QString filterHandld(const QString &s, const QString &cardName) =0;
21     void writeData(const QString &data, const QString &fileName=QString());
22 };
23 
24 class  ManualMange : public INetwork
25 {
26 public:
27     virtual void setAuto(const QString &cardName);
28     virtual void setStatic(const QString &cardName, const QString &ip, const QString &mask, const QString &gateway, const QString &dns);
29     QString exec();
30 
31     virtual QString filterHandld(const QString &s, const QString &cardName);
32     QString pathName();
33 };
34 
35 class  SystemCtlMange: public INetwork
36 {
37 public:
38     virtual void setAuto(const QString &cardname);
39     virtual void setStatic(const QString &cardName, const QString &ip, const QString &mask, const QString &gateway, const QString &dns);
40     QString exec();
41     virtual QString filterHandld(const QString &s, const QString &cardName);
42     QString pathName();
43 };
44 
45 class ManualMangeNotServer : public ManualMange
46 {
47 public:
48     virtual void setAuto(const QString &cardName);
49     virtual void setStatic(const QString &cardName, const QString &ip, const QString &mask, const QString &gateway, const QString &dns);
50     QString exec();
51 
52 private:
53     QString m_result;
54 };
55 
56 #endif //INETWORK_H
57 
58