blob: 8ffdd4d11b0be3c8bfb2e8a1fc7904779ef22502 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#ifndef FILECOPIER_H
#define FILECOPIER_H
#include <QThread>
#include <QMutex>
#include <QHash>
class FileCopier : public QThread {
Q_OBJECT
public:
FileCopier(QObject *parent = 0);
void addJob(const QString &source, const QString &dest);
QHash<QString, QString> jobs();
virtual void run();
void cancel();
signals:
void newFile(const QString &source, qint64 size);
void success(bool s, QString source);
void bytesRead(qint64 bytes);
private:
QHash<QString, QString> mJobs;
QMutex mAddJobMutex;
QMutex mCancelMutex;
bool mCancel;
};
#endif // FILECOPIER_H
|