00001 #ifndef CALCULATETHREAD_H
00002 #define CALCULATETHREAD_H
00003
00004 #include <QMutex>
00005 #include <QSize>
00006 #include <QThread>
00007 #include <QWaitCondition>
00008 #include "fractal.h"
00009
00010
00011 class CCalculateThread : public QThread
00012 {
00013 Q_OBJECT
00014
00015 public:
00016 CCalculateThread(QObject *parent = 0);
00017 ~CCalculateThread();
00018
00019
00020 signals:
00021 void calculatedFractal(double progress);
00022
00023 protected:
00024 void run();
00025
00026 private:
00027 CFractal fractal;
00028 QMutex mutex;
00029 QWaitCondition condition;
00030 bool restart;
00031 bool abort;
00032 };
00033
00034 #endif // CALCULATETHREAD_H