X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=venncommand.cpp;h=70c35f713bd02a6a1f786668ed00b79784f05293;hb=55bbd10379db27def51cec72a8819d775f73e45b;hp=1b4e3bc70848d7511c1dcd136fb4c320e4265b11;hpb=0caf3fbabaa3ece404f8ce77f4c883dc5b1bf1dc;p=mothur.git diff --git a/venncommand.cpp b/venncommand.cpp index 1b4e3bc..70c35f7 100644 --- a/venncommand.cpp +++ b/venncommand.cpp @@ -20,17 +20,18 @@ //********************************************************************************************************************** vector VennCommand::setParameters(){ try { - CommandParameter plist("list", "InputTypes", "", "", "LRSS", "LRSS", "none",false,false); parameters.push_back(plist); - CommandParameter pshared("shared", "InputTypes", "", "", "LRSS", "LRSS", "none",false,false); parameters.push_back(pshared); - CommandParameter pgroups("groups", "String", "", "", "", "", "",false,false); parameters.push_back(pgroups); - CommandParameter plabel("label", "String", "", "", "", "", "",false,false); parameters.push_back(plabel); - CommandParameter pcalc("calc", "String", "", "", "", "", "",false,false); parameters.push_back(pcalc); - CommandParameter pabund("abund", "Number", "", "10", "", "", "",false,false); parameters.push_back(pabund); - CommandParameter pnseqs("nseqs", "Boolean", "", "F", "", "", "",false,false); parameters.push_back(pnseqs); - CommandParameter pfontsize("fontsize", "Number", "", "24", "", "", "",false,false); parameters.push_back(pfontsize); - CommandParameter ppermute("permute", "Boolean", "", "F", "", "", "",false,false); parameters.push_back(ppermute); - CommandParameter pinputdir("inputdir", "String", "", "", "", "", "",false,false); parameters.push_back(pinputdir); - CommandParameter poutputdir("outputdir", "String", "", "", "", "", "",false,false); parameters.push_back(poutputdir); + CommandParameter plist("list", "InputTypes", "", "", "LRSS", "LRSS", "none","svg",false,false,true); parameters.push_back(plist); + CommandParameter pshared("shared", "InputTypes", "", "", "LRSS", "LRSS", "none","svg",false,false,true); parameters.push_back(pshared); + CommandParameter pgroups("groups", "String", "", "", "", "", "","",false,false); parameters.push_back(pgroups); + CommandParameter plabel("label", "String", "", "", "", "", "","",false,false); parameters.push_back(plabel); + CommandParameter pcalc("calc", "String", "", "", "", "", "","",false,false); parameters.push_back(pcalc); + CommandParameter pabund("abund", "Number", "", "10", "", "", "","",false,false); parameters.push_back(pabund); + CommandParameter pnseqs("nseqs", "Boolean", "", "F", "", "", "","",false,false); parameters.push_back(pnseqs); + CommandParameter psharedotus("sharedotus", "Boolean", "", "t", "", "", "","",false,false); parameters.push_back(psharedotus); + CommandParameter pfontsize("fontsize", "Number", "", "24", "", "", "","",false,false); parameters.push_back(pfontsize); + CommandParameter ppermute("permute", "Boolean", "", "F", "", "", "","",false,false); parameters.push_back(ppermute); + CommandParameter pinputdir("inputdir", "String", "", "", "", "", "","",false,false); parameters.push_back(pinputdir); + CommandParameter poutputdir("outputdir", "String", "", "", "", "", "","",false,false); parameters.push_back(poutputdir); vector myArray; for (int i = 0; i < parameters.size(); i++) { myArray.push_back(parameters[i].name); } @@ -66,6 +67,21 @@ string VennCommand::getHelpString(){ exit(1); } } +//********************************************************************************************************************** +string VennCommand::getOutputPattern(string type) { + try { + string pattern = ""; + + if (type == "svg") { pattern = "[filename],svg"; } + else { m->mothurOut("[ERROR]: No definition for type " + type + " output pattern.\n"); m->control_pressed = true; } + + return pattern; + } + catch(exception& e) { + m->errorOut(e, "VennCommand", "getOutputPattern"); + exit(1); + } +} //********************************************************************************************************************** VennCommand::VennCommand(){ @@ -200,6 +216,9 @@ VennCommand::VennCommand(string option) { temp = validParameter.validFile(parameters, "permute", false); if (temp == "not found"){ temp = "f"; } perm = m->isTrue(temp); + + temp = validParameter.validFile(parameters, "sharedotus", false); if (temp == "not found"){ temp = "t"; } + sharedOtus = m->isTrue(temp); temp = validParameter.validFile(parameters, "fontsize", false); if (temp == "not found") { temp = "24"; } m->mothurConvert(temp, fontsize); @@ -229,8 +248,7 @@ int VennCommand::execute(){ }else if (Estimators[i] == "chao") { vennCalculators.push_back(new Chao1()); }else if (Estimators[i] == "ace") { - if(abund < 5) - abund = 10; + if(abund < 5) { abund = 10; } vennCalculators.push_back(new Ace(abund)); } } @@ -252,7 +270,7 @@ int VennCommand::execute(){ //if the users entered no valid calculators don't execute command if (vennCalculators.size() == 0) { m->mothurOut("No valid calculators given, please correct."); m->mothurOutEndLine(); return 0; } - venn = new Venn(outputDir, nseqs, inputfile, fontsize); + venn = new Venn(outputDir, nseqs, inputfile, fontsize, sharedOtus); input = new InputData(inputfile, format); string lastLabel;