00001 #ifndef ACCUMULATOR_H
00002 #define ACCUMULATOR_H
00003
00004 #include <QObject>
00005 #include <QPointF>
00006 #include <QRectF>
00007
00008 #include "../complex.h"
00009 #include "../fractalinfo.h"
00010
00019 class Accumulator : public QObject
00020 {
00021 FractalInfo * _info;
00022
00023 public:
00025 Accumulator(FractalInfo * info, QObject * parent = 0);
00026
00028 virtual void accumuler(Complex &pInit, QVector<Complex> &seq) = 0;
00029
00031 inline FractalInfo * info() { return _info; }
00032
00033 protected:
00035 unsigned int toX(const Complex &z );
00037 unsigned int toY(const Complex &z );
00038 };
00039
00040 #endif // ACCUMULATOR_H