mirror of
https://github.com/PurpleI2P/i2pd
synced 2024-11-10 08:00:38 +03:00
87 lines
1.5 KiB
C
87 lines
1.5 KiB
C
|
#ifndef DAEMON_ANDROID_H
|
||
|
#define DAEMON_ANDROID_H
|
||
|
|
||
|
namespace i2p
|
||
|
{
|
||
|
namespace android
|
||
|
{
|
||
|
//FIXME currently NOT threadsafe
|
||
|
class DaemonAndroidImpl
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
DaemonAndroidImpl ();
|
||
|
~DaemonAndroidImpl ();
|
||
|
|
||
|
typedef void (*runningChangedCallback)();
|
||
|
|
||
|
/**
|
||
|
* @return success
|
||
|
*/
|
||
|
bool init(int argc, char* argv[]);
|
||
|
void start();
|
||
|
void stop();
|
||
|
void restart();
|
||
|
void setRunningCallback(runningChangedCallback cb);
|
||
|
bool isRunning();
|
||
|
private:
|
||
|
void setRunning(bool running);
|
||
|
private:
|
||
|
//QMutex* mutex;
|
||
|
bool m_IsRunning;
|
||
|
runningChangedCallback m_RunningChangedCallback;
|
||
|
};
|
||
|
|
||
|
/**
|
||
|
* returns 1 if daemon init failed
|
||
|
* returns 0 if daemon initialized and started okay
|
||
|
*/
|
||
|
int start();
|
||
|
|
||
|
// stops the daemon
|
||
|
void stop();
|
||
|
|
||
|
/*
|
||
|
class Worker : public QObject
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
public:
|
||
|
|
||
|
Worker (DaemonAndroidImpl& daemon);
|
||
|
|
||
|
private:
|
||
|
|
||
|
DaemonAndroidImpl& m_Daemon;
|
||
|
|
||
|
public slots:
|
||
|
void startDaemon();
|
||
|
void restartDaemon();
|
||
|
void stopDaemon();
|
||
|
|
||
|
signals:
|
||
|
void resultReady();
|
||
|
};
|
||
|
|
||
|
class Controller : public QObject
|
||
|
{
|
||
|
Q_OBJECT
|
||
|
QThread workerThread;
|
||
|
public:
|
||
|
Controller(DaemonAndroidImpl& daemon);
|
||
|
~Controller();
|
||
|
private:
|
||
|
DaemonAndroidImpl& m_Daemon;
|
||
|
|
||
|
public slots:
|
||
|
void handleResults(){}
|
||
|
signals:
|
||
|
void startDaemon();
|
||
|
void stopDaemon();
|
||
|
void restartDaemon();
|
||
|
};
|
||
|
*/
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif // DAEMON_ANDROID_H
|