]> git.donarmstrong.com Git - mothur.git/blobdiff - setdircommand.cpp
removed read.dist, read.otu, read.tree and globaldata. added current to defaults...
[mothur.git] / setdircommand.cpp
index a76db24282e2c00032ec747de2d1d5decf20e095..16e93b5e4f5e8feeb864693a3d4a96ac75b9ed61 100644 (file)
 #include "setdircommand.h"
 
 //**********************************************************************************************************************
-vector<string> SetDirectoryCommand::getValidParameters(){      
-       try {
-               string Array[] =  {"output","input","tempdefault","outputdir","inputdir"};
-               vector<string> myArray (Array, Array+(sizeof(Array)/sizeof(string)));
-               return myArray;
-       }
-       catch(exception& e) {
-               m->errorOut(e, "SetDirectoryCommand", "getValidParameters");
-               exit(1);
-       }
-}
-//**********************************************************************************************************************
-vector<string> SetDirectoryCommand::getRequiredParameters(){   
+vector<string> SetDirectoryCommand::setParameters(){   
        try {
+               CommandParameter ptempdefault("tempdefault", "String", "", "", "", "", "",false,false); parameters.push_back(ptempdefault);     
+               CommandParameter pinput("input", "String", "", "", "", "", "",false,false); parameters.push_back(pinput);
+               CommandParameter poutput("output", "String", "", "", "", "", "",false,false); parameters.push_back(poutput);
+               CommandParameter pinputdir("inputdir", "String", "", "", "", "", "",false,false); parameters.push_back(pinputdir);
+               CommandParameter poutputdir("outputdir", "String", "", "", "", "", "",false,false); parameters.push_back(poutputdir);
+               
                vector<string> myArray;
+               for (int i = 0; i < parameters.size(); i++) {   myArray.push_back(parameters[i].name);          }
                return myArray;
        }
        catch(exception& e) {
-               m->errorOut(e, "SetDirectoryCommand", "getRequiredParameters");
+               m->errorOut(e, "SetDirectoryCommand", "setParameters");
                exit(1);
        }
 }
 //**********************************************************************************************************************
-vector<string> SetDirectoryCommand::getRequiredFiles(){        
+string SetDirectoryCommand::getHelpString(){   
        try {
-               vector<string> myArray;
-               return myArray;
+               string helpString = "";
+               helpString += "The set.dir command can be used to direct the output files generated by mothur to a specific place, the directory must exist.\n";
+               helpString += "The set.dir command can also be used to specify the directory where your input files are located, the directory must exist.\n";
+               helpString += "The set.dir command can also be used to override or set the default location mothur will look for files if it is unable to find them, the directory must exist.\n";
+               helpString += "The set.dir command parameters are input, output and tempdefault and one is required.\n";
+               helpString += "To return the output to the same directory as the input files you may enter: output=clear.\n";
+               helpString += "To return the input to the current working directory you may enter: input=clear.\n";
+               helpString += "To set the output to the directory where mothur.exe is located you may enter: output=default.\n";
+               helpString += "To set the input to the directory where mothur.exe is located you may enter: input=default.\n";
+               helpString += "To return the tempdefault to the default you provided at compile time you may enter: tempdefault=clear.\n";
+               helpString += "To set the tempdefault to the directory where mothur.exe is located you may enter: tempdefault=default.\n";
+               helpString += "The set.dir command should be in the following format: set.dir(output=yourOutputDirectory, input=yourInputDirectory, tempdefault=yourTempDefault).\n";
+               helpString += "Example set.outdir(output=/Users/lab/desktop/outputs, input=/Users/lab/desktop/inputs).\n";
+               helpString += "Note: No spaces between parameter labels (i.e. output), '=' and parameters (i.e.yourOutputDirectory).\n\n";
+               return helpString;
        }
        catch(exception& e) {
-               m->errorOut(e, "SetDirectoryCommand", "getRequiredFiles");
+               m->errorOut(e, "SetDirectoryCommand", "getHelpString");
                exit(1);
        }
 }
@@ -87,33 +95,6 @@ SetDirectoryCommand::SetDirectoryCommand(string option)  {
 }
 //**********************************************************************************************************************
 
-void SetDirectoryCommand::help(){
-       try {
-               m->mothurOut("The set.dir command can be used to direct the output files generated by mothur to a specific place, the directory must exist.\n");
-               m->mothurOut("The set.dir command can also be used to specify the directory where your input files are located, the directory must exist.\n");
-               m->mothurOut("The set.dir command can also be used to override or set the default location mothur will look for files if it is unable to find them, the directory must exist.\n");
-               m->mothurOut("The set.dir command parameters are input, output and tempdefault and one is required.\n");
-               m->mothurOut("To return the output to the same directory as the input files you may enter: output=clear.\n");
-               m->mothurOut("To return the input to the current working directory you may enter: input=clear.\n");
-               m->mothurOut("To set the output to the directory where mothur.exe is located you may enter: output=default.\n");
-               m->mothurOut("To set the input to the directory where mothur.exe is located you may enter: input=default.\n");
-               m->mothurOut("To return the tempdefault to the default you provided at compile time you may enter: tempdefault=clear.\n");
-               m->mothurOut("To set the tempdefault to the directory where mothur.exe is located you may enter: tempdefault=default.\n");
-               m->mothurOut("The set.dir command should be in the following format: set.dir(output=yourOutputDirectory, input=yourInputDirectory, tempdefault=yourTempDefault).\n");
-               m->mothurOut("Example set.outdir(output=/Users/lab/desktop/outputs, input=/Users/lab/desktop/inputs).\n");
-               m->mothurOut("Note: No spaces between parameter labels (i.e. output), '=' and parameters (i.e.yourOutputDirectory).\n\n");
-       }
-       catch(exception& e) {
-               m->errorOut(e, "SetDirectoryCommand", "help");
-               exit(1);
-       }
-}
-//**********************************************************************************************************************
-
-SetDirectoryCommand::~SetDirectoryCommand(){}
-
-//**********************************************************************************************************************
-
 int SetDirectoryCommand::execute(){
        try {
                
@@ -124,8 +105,7 @@ int SetDirectoryCommand::execute(){
                //redirect output
                if ((output == "clear") || (output == "")) {  output = "";  commandFactory->setOutputDirectory(output);  }
                else if (output == "default") { 
-                       GlobalData* globaldata = GlobalData::getInstance();
-                       string exepath = globaldata->argv;
+                       string exepath = m->argv;
                        output = exepath.substr(0, (exepath.find_last_of('m')));
                        
                        m->mothurOut("Changing output directory to " + output); m->mothurOutEndLine();  
@@ -157,8 +137,7 @@ int SetDirectoryCommand::execute(){
                //redirect input
                if ((input == "clear") || (input == "")) {  input = "";  commandFactory->setInputDirectory(input);  }
                else if (input == "default") { 
-                       GlobalData* globaldata = GlobalData::getInstance();
-                       string exepath = globaldata->argv;
+                       string exepath = m->argv;
                        input = exepath.substr(0, (exepath.find_last_of('m')));
                        
                        m->mothurOut("Changing input directory to " + input); m->mothurOutEndLine();  
@@ -200,8 +179,7 @@ int SetDirectoryCommand::execute(){
                        #endif
                }else if (tempdefault == "") {  //do nothing
                }else if (tempdefault == "default") { 
-                       GlobalData* globaldata = GlobalData::getInstance();
-                       string exepath = globaldata->argv;
+                       string exepath = m->argv;
                        tempdefault = exepath.substr(0, (exepath.find_last_of('m')));
                        
                        m->mothurOut("Changing default directory to " + tempdefault); m->mothurOutEndLine();