00001 #ifndef CALCULIMAGE_H
00002 #define CALCULIMAGE_H
00003
00004 #include <QtConcurrentRun>
00005 #include <QtConcurrentMap>
00006 #include <QThread>
00007 #include <QFuture>
00008 #include <QFutureWatcher>
00009 #include <QImage>
00010 #include <QColor>
00011 #include <QDebug>
00012 #include <math.h>
00013
00014 #include "generator/generator.h"
00015 #include "fractals/fractal.h"
00016 #include "accumulator/accumulator.h"
00017
00025 class CalculImage : public QThread
00026 {
00027 Q_OBJECT
00028
00029 QImage _result;
00030
00031 Generator * _gen;
00032 Fractal * _fractale;
00033 Accumulator * _accu;
00034
00035 QFutureWatcher<void> * _watcher;
00036
00037 public:
00038 CalculImage(Generator * gen, Fractal * fractale, Accumulator * accu);
00039 virtual void run();
00040 QImage result();
00041
00042 private slots :
00043 void progress(int);
00044
00045 signals:
00046 void progressValueChanged(int value);
00047 void setRange(int min, int max);
00048 };
00049
00050 #endif // CALCULIMAGE_H