X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=engine.hpp;h=d5846ba65fc287a6b7de3e7f5f6cfaa57a7f5951;hb=c3396974063d6efc5e5850ddf4ed8ab65cc94bb9;hp=276d29267a298dd7c2f52c9b550b3d9b37c555a0;hpb=36a8526766106bce1412e530e99f9c699dd59105;p=mothur.git diff --git a/engine.hpp b/engine.hpp index 276d292..d5846ba 100644 --- a/engine.hpp +++ b/engine.hpp @@ -17,22 +17,26 @@ #include "commandoptionparser.hpp" #include "command.hpp" #include "commandfactory.hpp" -#include "errorchecking.h" - - -using namespace std; +#include "mothurout.h" class GlobalData; class Engine { public: - virtual ~Engine(){}; + Engine(); + virtual ~Engine(){} virtual bool getInput() = 0; -// string getCommand() { return command; } - vector getOptions() { return options; } + virtual string getCommand(); + virtual string getOutputDir() { return cFactory->getOutputDir(); } + virtual string getLogFileName() { return cFactory->getLogfileName(); } + virtual bool getAppend() { return cFactory->getAppend(); } + + vector getOptions() { return options; } protected: -// string command; vector options; + CommandFactory* cFactory; + MothurOut* mout; + string findMothursPath(); }; @@ -46,6 +50,7 @@ public: private: GlobalData* globaldata; ifstream inputBatchFile; + string getNextCommand(ifstream&); }; @@ -61,4 +66,18 @@ private: }; +class ScriptEngine : public Engine { +public: + ScriptEngine(string, string); + ~ScriptEngine(); + virtual bool getInput(); + int openedBatch; +private: + GlobalData* globaldata; + string listOfCommands; + string getNextCommand(string&); + +}; + + #endif