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: 00024 Accumulator(FractalInfo * info, QObject * parent = 0); 00025 virtual void accumuler(Complex &pInit, QVector<Complex> &seq) = 0; 00026 00027 inline FractalInfo * info() { return _info; } 00028 00029 protected: 00030 unsigned int toX(const Complex &z ); 00031 unsigned int toY(const Complex &z ); 00032 }; 00033 00034 #endif // ACCUMULATOR_H