00001 #ifndef GENERATORFACTORY_H
00002 #define GENERATORFACTORY_H
00003
00004 #include <QObject>
00005 #include <QStringList>
00006
00007 #include "generator.h"
00008 #include "randompointgenerator.h"
00009 #include "imagegenerator.h"
00010
00017 class GeneratorFactory : public QObject
00018 {
00019
00020 static GeneratorFactory * _instance;
00021 public:
00023 static GeneratorFactory * instance(QObject * parent = 0);
00024
00025
00026 private:
00027 QStringList _generatorNames;
00028
00029 explicit GeneratorFactory(QObject *parent = 0);
00030
00031 public:
00033 QStringList names() { return _generatorNames; }
00039 Generator * generator(QString name, FractalInfo * info, bool autoParam = true);
00040 };
00041
00042 #endif // GENERATORFACTORY_H