*/
#include "mothur.h"
+#include "mothurout.h";
class Command;
class CommandFactory {
public:
- CommandFactory();
- ~CommandFactory();
+ static CommandFactory* getInstance();
Command* getCommand(string, string);
+ Command* getCommand();
+ bool isValidCommand(string);
+ void printCommands(ostream&);
+ void setOutputDirectory(string o) { outputDir = o; }
+ void setInputDirectory(string i) { inputDir = i; }
+ string getOutputDir() { return outputDir; }
+ bool MPIEnabled(string);
+
private:
Command* command;
+ MothurOut* m;
+ map<string, string> commands;
+ map<string, string>::iterator it;
+ string outputDir, inputDir;
+
+ static CommandFactory* _uniqueInstance;
+ CommandFactory( const CommandFactory& ); // Disable copy constructor
+ void operator=( const CommandFactory& ); // Disable assignment operator
+ CommandFactory();
+ ~CommandFactory();
};