]> git.donarmstrong.com Git - mothur.git/blobdiff - parsimonycommand.cpp
indicator command
[mothur.git] / parsimonycommand.cpp
index be64ec273ec8c62fcba9a7cd206955878f7e21ed..6e69cad4f8dbde50541a8daad71dbcce712b8953 100644 (file)
@@ -74,6 +74,7 @@ ParsimonyCommand::ParsimonyCommand(string option)  {
                        
                //allow user to run help
                if(option == "help") { help(); abort = true; calledHelp = true; }
+               else if(option == "citation") { citation(); abort = true; calledHelp = true;}
                
                else {
                        vector<string> myArray = setParameters();
@@ -125,6 +126,10 @@ ParsimonyCommand::ParsimonyCommand(string option)  {
                        }
                        
                        m->runParse = true;
+                       m->Groups.clear();
+                       m->namesOfGroups.clear();
+                       m->Treenames.clear();
+                       m->names.clear();
                        
                        outputDir = validParameter.validFile(parameters, "outputdir", false);           if (outputDir == "not found"){  outputDir = ""; }
                        
@@ -139,16 +144,18 @@ ParsimonyCommand::ParsimonyCommand(string option)  {
                                        treefile = m->getTreeFile(); 
                                        if (treefile != "") { m->mothurOut("Using " + treefile + " as input file for the tree parameter."); m->mothurOutEndLine(); }
                                        else {  m->mothurOut("You have no current tree file and the tree parameter is required."); m->mothurOutEndLine(); abort = true; }                                                               
-                               }       
+                               }else { m->setTreeFile(treefile); }     
                                
                                //check for required parameters
                                groupfile = validParameter.validFile(parameters, "group", true);
                                if (groupfile == "not open") { abort = true; }
                                else if (groupfile == "not found") { groupfile = ""; }
+                               else { m->setGroupFile(groupfile); }
                                
                                namefile = validParameter.validFile(parameters, "name", true);
                                if (namefile == "not open") { abort = true; }
                                else if (namefile == "not found") { namefile = ""; }
+                               else { m->setNameFile(namefile); }
                        }
                        
                        //if the user changes the output directory command factory will send this info to us in the output parameter 
@@ -188,6 +195,9 @@ int ParsimonyCommand::execute() {
                //randomtree will tell us if user had their own treefile or if they just want the random distribution
                //user has entered their own tree
                if (randomtree == "") { 
+                       
+                       m->setTreeFile(treefile);
+                       
                        if (groupfile != "") {
                                //read in group map info.
                                tmap = new TreeMap(groupfile);