#ifndef FILESCANWORKER_H #define FILESCANWORKER_H #include #include #include #include #include "paralleldirscanner.h" #include "filesaver.h" typedef std::pair FileScanResult; class FileScanWorker : public QObject, public QRunnable { Q_OBJECT protected: SqliteDbService *dbService; ConcurrentQueue *queue; FileSaverOptions fileSaverOptions; int batchsize; std::atomic *stopToken; public: FileScanWorker(SqliteDbService &db, ConcurrentQueue &queue, int batchsize, std::atomic &stopToken); void run() override; void setFileSaverOptions(FileSaverOptions options); signals: void result(FileScanResult); void finished(); }; #endif // FILESCANWORKER_H