2017-12-25 15:32:02 +01:00
|
|
|
|
#ifndef WORKMANAGER_H
|
|
|
|
|
|
#define WORKMANAGER_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <functional>
|
|
|
|
|
|
#include <memory>
|
|
|
|
|
|
|
|
|
|
|
|
class QRunnable;
|
|
|
|
|
|
|
|
|
|
|
|
class WorkManager {
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
|
|
|
|
static std::shared_ptr<WorkManager> getWorkManager();
|
|
|
|
|
|
|
|
|
|
|
|
using Work = std::function<void()>;
|
2018-12-16 15:38:32 +01:00
|
|
|
|
|
|
|
|
|
|
virtual ~WorkManager() = default;
|
2017-12-25 15:32:02 +01:00
|
|
|
|
virtual void addRunnable(QRunnable *runnable) = 0;
|
|
|
|
|
|
virtual void addWork(Work work) = 0;
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif // WORKMANAGER_H
|