#define ALERTWAITERTHREAD_H
#include <QThread>
+#include "QBittorrentSession.h"
+
/**
@author Lassi Väätämöinen <lassi.vaatamoinen@ixonos.com>
Q_OBJECT
public:
- AlertWaiterThread(QObject* parent = 0);
+ AlertWaiterThread(TorrentSession *const session, QObject *parent = 0);
- ~AlertWaiterThread();
+ virtual ~AlertWaiterThread();
- void run(); // Overridden from QThread
+ void allAlerts(bool enable = true);
+
+ virtual void run(); // Overridden from QThread
signals:
- void alert();
+ /// @TODO alert() uses direct connection, so th connected slot is executed by AlertWaiterThread
+ /// Hence, QMutex is needed in receiver slot/thread for thread-safety.
+ /// @NOTE Alternatively, we could use an event loop in the thread and use queued signal (is it heavier?)
+ void alert(Alert const *alert);
private:
-
+ TorrentSession *const btSession_;
+
};
#endif