00001 #ifndef BATCH_H
00002 #define BATCH_H
00003
00004 #if (defined WIN32 || defined (_WIN32))
00005 # undef __WINDOWS__
00006 # define __WINDOWS__
00007 # undef __MSDOS__
00008 # define __MSDOS__
00009 # undef UNIX
00010 # undef unix
00011 # undef __unix__
00012 #endif
00013
00014 #if (defined WINDOWS || defined (_WINDOWS) || defined (__WINDOWS__))
00015 # undef __WINDOWS__
00016 # define __WINDOWS__
00017 # undef __MSDOS__
00018 # define __MSDOS__
00019 #endif
00020
00021 #include <Importer.h>
00022 #include <Exporter.h>
00023 #include <Analyzer.h>
00024 #include <vector>
00025 #include "ReferenceModel.h"
00026
00027 using namespace std;
00028
00029 class Batch {
00030 public:
00031 enum e_TESTMODE { PCA, STABILITY, ALLTEST, ACCURACY };
00032 private:
00033 bool m_mainRun, m_subRun;
00034 string m_mainErr,m_subErr;
00035 vector<ExampleModel*> m_inputModels;
00036 vector<ReferenceModel> m_refModels;
00037 vector<ReferenceModel> m_generatedModels;
00038 Analyzer pca;
00039
00040 void import();
00041 void importModel();
00042 void importDir();
00043 void importData();
00044 void analyze();
00045 void analyzeModel();
00046 void getModel();
00047 void getRandomModels();
00048 void Export();
00049 void ExportModel();
00050 void ExportModels();
00051 void Test();
00052 void TestSystem(e_TESTMODE mode,Analyzer::e_PCAMode method);
00053 void TestSystem(e_TESTMODE mode);
00054 void TestAnalyzer(Analyzer::e_PCAMode mode, int size);
00055
00056
00057
00058 void renderTitle(string title, bool sub=false);
00059 void renderOptions(string title, vector<string> options, bool back=false);
00060 int handleInput();
00061 public:
00062 Batch();
00063 Batch(bool debug);
00064 ~Batch() {};
00065
00066 void Init();
00067
00068
00069 };
00070
00071 #endif //BATCH_H
00072