blob: f0c192db9a44a87cc3b4f8fe51033a102231510a [file] [log] [blame]
Ilya Moiseenko656d52d2013-10-25 14:19:10 -07001/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil -*- */
2/*
3 * @copyright See LICENCE for copyright and license information.
4 *
5 * @author Ilya Moiseenko <iliamo@ucla.edu>
6 */
7
8#include <QtDBus>
Ilya Moiseenko393cbdc2013-10-29 00:45:40 -07009#include <QThread>
Ilya Moiseenko656d52d2013-10-25 14:19:10 -070010
11#ifndef NETWORKMANAGER_H
12#define NETWORKMANAGER_H
13
14#define NDND_AUTOCONFIG_COMMAND "/usr/local/bin/ndnd-autoconfig"
15#define NM_STATE_DISCONNECTED 20
16#define NM_STATE_CONNECTING 40
17#define NM_STATE_CONNECTED_GLOBAL 70
18
19class NetworkManager : public QObject
20{
21 Q_OBJECT
22
23public:
24 NetworkManager();
Ilya Moiseenko393cbdc2013-10-29 00:45:40 -070025 bool IsAutoconfigRunning();
26
27public slots:
28 void autoconfigDaemon();
Ilya Moiseenko656d52d2013-10-25 14:19:10 -070029
30private:
Ilya Moiseenko393cbdc2013-10-29 00:45:40 -070031 QProcess * autoconfigProcess;
32 bool isAutoconfigRunning;
Ilya Moiseenko656d52d2013-10-25 14:19:10 -070033
34private slots:
35 void stateChanged(uint state);
Ilya Moiseenko393cbdc2013-10-29 00:45:40 -070036 void autoconfigFinished();
Ilya Moiseenko656d52d2013-10-25 14:19:10 -070037};
38
39
40#endif // NETWORKMANAGER_H