00001 #ifndef MAINAPPLICATION_H
00002 #define MAINAPPLICATION_H
00003
00004
00005
00006 class Minimizer;
00007 class INIParser;
00008 class Config;
00009
00010 class MainApplication
00011 {
00012 public:
00013 MainApplication(int* argc, char ***argv);
00014
00015 enum Mode {
00016 BlockingMode,
00017 DensityMode,
00018 MinimizerMode,
00019 GeneticMode,
00020 DiffusionMode,
00021 OneRunMode
00022 };
00023
00024 void loadConfiguration();
00025 void runConfiguration();
00026
00027 void finalize();
00028 private:
00029 INIParser *m_settings;
00030
00031
00032
00033 int* argc;
00034 char*** argv;
00035 int m_rank;
00036 int m_nProcesses;
00037 int m_nParticles;
00038 int m_nDimensions;
00039 Config *m_config;
00040
00041 Mode m_mode;
00042 };
00043
00044 #endif // MAINAPPLICATION_H