X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=engine.hpp;h=460e245bf5312d81f5b15d70387cf9ec63d472f6;hp=d42406e46022bfa717e288ecf9fa05df2a3a8185;hb=1a20e24ee786195ab0e1cccd4f5aede7a88f3f4e;hpb=74c78f9abd9e733f0c2f812efec97a76632fcbf8 diff --git a/engine.hpp b/engine.hpp index d42406e..460e245 100644 --- a/engine.hpp +++ b/engine.hpp @@ -13,23 +13,26 @@ #include "mothur.h" -#include "globaldata.hpp" #include "commandoptionparser.hpp" #include "command.hpp" #include "commandfactory.hpp" -#include "errorchecking.h" - -class GlobalData; +#include "mothurout.h" 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; }; @@ -41,8 +44,8 @@ public: virtual bool getInput(); int openedBatch; private: - GlobalData* globaldata; ifstream inputBatchFile; + string getNextCommand(ifstream&); }; @@ -54,7 +57,20 @@ public: ~InteractEngine(); virtual bool getInput(); private: - GlobalData* globaldata; + +}; + + +class ScriptEngine : public Engine { +public: + ScriptEngine(string, string); + ~ScriptEngine(); + virtual bool getInput(); + int openedBatch; +private: + string listOfCommands; + string getNextCommand(string&); + };