summaryrefslogtreecommitdiff
path: root/plugins/CopyEngine/Ultracopier-0.3/ReadThread.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/CopyEngine/Ultracopier-0.3/ReadThread.h')
-rw-r--r--plugins/CopyEngine/Ultracopier-0.3/ReadThread.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/plugins/CopyEngine/Ultracopier-0.3/ReadThread.h b/plugins/CopyEngine/Ultracopier-0.3/ReadThread.h
index 537134a..1d1eabc 100644
--- a/plugins/CopyEngine/Ultracopier-0.3/ReadThread.h
+++ b/plugins/CopyEngine/Ultracopier-0.3/ReadThread.h
@@ -13,14 +13,13 @@
#include <QTimer>
#include <QDateTime>
#include <QFileInfo>
+#include <QCryptographicHash>
#include "WriteThread.h"
#include "Environment.h"
#include "StructEnumDefinition_CopyEngine.h"
#include "AvancedQFile.h"
-/// \todo do fake open/close
-
/// \brief Thread changed to open/close and read the source file
class ReadThread : public QThread
{
@@ -65,7 +64,8 @@ public:
Idle=0,
InodeOperation=1,
Read=2,
- WaitWritePipe=3
+ WaitWritePipe=3,
+ Checksum=4
};
ReadStat stat;
#endif
@@ -79,9 +79,14 @@ public:
void fakeReadIsStarted();
/// \brief do the fake readIsStopped
void fakeReadIsStopped();
+ /// do the checksum
+ void startCheckSum();
public slots:
/// \brief to reset the copy, and put at the same state when it just open
void seekToZeroAndWait();
+ void postOperation();
+ /// do the checksum
+ void checkSum();
signals:
void error();
void isInPause();
@@ -93,13 +98,16 @@ signals:
void checkIfIsWait();
void resumeAfterErrorByRestartAll();
void resumeAfterErrorByRestartAtTheLastPosition();
+ void checksumFinish(const QByteArray&);
// internal signals
- void internalStartOpen();
+ void internalStartOpen();
+ void internalStartChecksum();
void internalStartReopen();
void internalStartRead();
void internalStartClose();
/// \brief To debug source
void debugInformation(DebugLevel level,QString fonction,QString text,QString file,int ligne);
+
private:
QString name;
QString errorString_internal;
@@ -130,7 +138,6 @@ private slots:
bool internalReopen();
void internalRead();
void internalClose(bool callByTheDestructor=false);
- void postOperation();
void isInWait();
};