#ifndef NETWORKMANAGER_H #define NETWORKMANAGER_H #include #include #include "json/jsonobject.h" class NetworkManager : public QObject { Q_OBJECT public: //static NetworkManager* Instance(); //static void qIfConfig(const localhost& lhost); static QString interfaceName(); static bool isDHCP(); static IpAddr getDefaultIpAddr(); static QList getIpAddrList(); static QString getDefaultGateway(); static QList getIpRouteList(); //static void setInterfaceName(const QString& name); static bool restart(QString& err_info); static bool setJsonDHCP(bool enable); static bool setDefaultIpAddr(const IpAddr& addr, QString& err_info); static bool setIpAddrList(const QList& list, QString& err_info); static bool setDefaultGateway(const QString& gw, QString& err_info); static bool setIpRouteList(const QList& list, QString& err_info); static QString NewExp(QString ip, QString mask); static bool testSetMode(QString& err_info); static void testGetMode(); //private: //explicit NetworkManager(QObject* parent = nullptr); //static NetworkManager* instance; //QString InterfaceName; //bool isDHCP; //IpAddress default_IpAddr; //QList addresses; //IpRoute default_IpRoute; //QList routes; }; #endif // NETWORKMANAGER_H