-#ifndef COMMANDFACTORY_HPP
-#define COMMANDFACTORY_HPP
-
-/*
- * commandfactory.h
- *
- *
- * Created by Pat Schloss on 10/25/08.
- * Copyright 2008 Patrick D. Schloss. All rights reserved.
- *
- */
-
-#include "mothur.h"
-
-class Command;
-
-class CommandFactory {
-public:
- CommandFactory();
- ~CommandFactory();
- Command* getCommand(string, string);
- Command* getCommand();
- bool isValidCommand(string);
- void printCommands(ostream&);
-
-private:
- Command* command;
- map<string, string> commands;
- map<string, string>::iterator it;
-
-
-
-};
-
-#endif
+#ifndef COMMANDFACTORY_HPP\r
+#define COMMANDFACTORY_HPP\r
+\r
+/*\r
+ * commandfactory.h\r
+ * \r
+ *\r
+ * Created by Pat Schloss on 10/25/08.\r
+ * Copyright 2008 Patrick D. Schloss. All rights reserved.\r
+ *\r
+ */\r
+\r
+#include "mothur.h"\r
+#include "mothurout.h"\r
+\r
+class Command;\r
+\r
+class CommandFactory {\r
+public:\r
+ static CommandFactory* getInstance();\r
+ Command* getCommand(string, string, string);\r
+ Command* getCommand(string, string);\r
+ Command* getCommand(string);\r
+ //Command* getCommand();\r
+ bool isValidCommand(string);\r
+ bool isValidCommand(string, string);\r
+ void printCommands(ostream&);\r
+ void setOutputDirectory(string o) { outputDir = o; m->setOutputDir(o); }\r
+ void setInputDirectory(string i) { inputDir = i; }\r
+ void setLogfileName(string n, bool a) { logFileName = n; append = a; }\r
+ string getLogfileName() { return logFileName; }\r
+ bool getAppend() { return append; }\r
+ string getOutputDir() { return outputDir; }\r
+ bool MPIEnabled(string);\r
+\r
+private:\r
+ Command* command;\r
+ Command* shellcommand;\r
+ Command* pipecommand;\r
+ MothurOut* m;\r
+ map<string, string> commands;\r
+ map<string, string>::iterator it;\r
+ string outputDir, inputDir, logFileName;\r
+ bool append;\r
+ \r
+ static CommandFactory* _uniqueInstance;\r
+ CommandFactory( const CommandFactory& ); // Disable copy constructor\r
+ void operator=( const CommandFactory& ); // Disable assignment operator\r
+ CommandFactory();\r
+ ~CommandFactory();\r
+\r
+};\r
+\r
+#endif\r