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
00011
00012 class GeneratorFactory : public QObject
00013 {
00014
00015 static GeneratorFactory * _instance;
00016 public:
00017 static GeneratorFactory * instance(QObject * parent = 0);
00018
00019
00020 private:
00021 QStringList _generatorNames;
00022
00023 explicit GeneratorFactory(QObject *parent = 0);
00024
00025 public:
00026 QStringList names() { return _generatorNames; }
00027 Generator * generator(QString name, FractalInfo * info, bool autoParam = true);
00028 };
00029
00030 #endif // GENERATORFACTORY_H