X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=commandfactory.cpp;h=0c9504d09a109a39168af9b9d582ef20732e6647;hb=82723a54e6109e2d46d84c10e87727cebd5a18ea;hp=250e4f6e3176ee10c7674778f365f9785a4df855;hpb=f598bd8389840cf030d61f5da7d0b2c3e37c06ba;p=mothur.git diff --git a/commandfactory.cpp b/commandfactory.cpp index 250e4f6..0c9504d 100644 --- a/commandfactory.cpp +++ b/commandfactory.cpp @@ -36,8 +36,6 @@ #include "binsequencecommand.h" #include "getoturepcommand.h" #include "treegroupscommand.h" -#include "bootstrapsharedcommand.h" -//#include "consensuscommand.h" #include "distancecommand.h" #include "aligncommand.h" #include "matrixoutputcommand.h" @@ -48,7 +46,6 @@ #include "reversecommand.h" #include "trimseqscommand.h" #include "mergefilecommand.h" -#include "chimeraseqscommand.h" #include "listseqscommand.h" #include "getseqscommand.h" #include "removeseqscommand.h" @@ -70,6 +67,7 @@ #include "chimeraslayercommand.h" #include "chimerapintailcommand.h" #include "chimerabellerophoncommand.h" +#include "chimerauchimecommand.h" #include "setlogfilecommand.h" #include "phylodiversitycommand.h" #include "makegroupcommand.h" @@ -109,6 +107,29 @@ #include "nmdscommand.h" #include "removerarecommand.h" #include "mergegroupscommand.h" +#include "amovacommand.h" +#include "homovacommand.h" +#include "mantelcommand.h" +#include "makefastqcommand.h" +#include "anosimcommand.h" +#include "getcurrentcommand.h" +#include "setcurrentcommand.h" +#include "sharedcommand.h" +#include "getcommandinfocommand.h" +#include "deuniquetreecommand.h" +#include "countseqscommand.h" +#include "countgroupscommand.h" +#include "clearmemorycommand.h" +#include "summarytaxcommand.h" +#include "chimeraperseuscommand.h" +#include "shhhseqscommand.h" +#include "summaryqualcommand.h" +#include "otuassociationcommand.h" +#include "sortseqscommand.h" +#include "classifytreecommand.h" +#include "cooccurrencecommand.h" +#include "pcrseqscommand.h" +#include "createdatabasecommand.h" /*******************************************************/ @@ -144,6 +165,7 @@ CommandFactory::CommandFactory(){ commands["read.dist"] = "read.dist"; commands["read.otu"] = "read.otu"; commands["read.tree"] = "read.tree"; + commands["make.shared"] = "make.shared"; commands["bin.seqs"] = "bin.seqs"; commands["get.oturep"] = "get.oturep"; commands["cluster"] = "cluster"; @@ -167,15 +189,13 @@ CommandFactory::CommandFactory(){ commands["get.label"] = "get.label"; commands["get.sabund"] = "get.sabund"; commands["get.rabund"] = "get.rabund"; - commands["bootstrap.shared"] = "bootstrap.shared"; - //commands["consensus"] = "consensus"; commands["help"] = "help"; commands["reverse.seqs"] = "reverse.seqs"; commands["trim.seqs"] = "trim.seqs"; commands["trim.flows"] = "trim.flows"; commands["list.seqs"] = "list.seqs"; commands["get.seqs"] = "get.seqs"; - commands["remove.seqs"] = "get.seqs"; + commands["remove.seqs"] = "remove.seqs"; commands["system"] = "system"; commands["align.check"] = "align.check"; commands["get.sharedseqs"] = "get.sharedseqs"; @@ -186,7 +206,7 @@ CommandFactory::CommandFactory(){ commands["pre.cluster"] = "pre.cluster"; commands["pcoa"] = "pcoa"; commands["otu.hierarchy"] = "otu.hierarchy"; - commands["set.dir"] = "set.dir"; + commands["set.dir"] = "MPIEnabled"; commands["merge.files"] = "merge.files"; commands["parse.list"] = "parse.list"; commands["set.logfile"] = "set.logfile"; @@ -220,25 +240,47 @@ CommandFactory::CommandFactory(){ commands["pca"] = "pca"; commands["nmds"] = "nmds"; commands["remove.rare"] = "remove.rare"; + commands["amova"] = "amova"; + commands["homova"] = "homova"; + commands["mantel"] = "mantel"; + commands["anosim"] = "anosim"; + commands["make.fastq"] = "make.fastq"; commands["merge.groups"] = "merge.groups"; + commands["get.current"] = "MPIEnabled"; + commands["set.current"] = "MPIEnabled"; + commands["get.commandinfo"] = "get.commandinfo"; + commands["deunique.tree"] = "deunique.tree"; + commands["count.seqs"] = "count.seqs"; + commands["count.groups"] = "count.groups"; + commands["clear.memory"] = "clear.memory"; commands["pairwise.seqs"] = "MPIEnabled"; commands["pipeline.pds"] = "MPIEnabled"; commands["classify.seqs"] = "MPIEnabled"; commands["dist.seqs"] = "MPIEnabled"; commands["filter.seqs"] = "MPIEnabled"; commands["align.seqs"] = "MPIEnabled"; - commands["chimera.seqs"] = "chimera.seqs"; commands["chimera.ccode"] = "MPIEnabled"; commands["chimera.check"] = "MPIEnabled"; commands["chimera.slayer"] = "MPIEnabled"; + commands["chimera.uchime"] = "chimera.uchime"; + commands["chimera.perseus"] = "chimera.perseus"; commands["chimera.pintail"] = "MPIEnabled"; commands["chimera.bellerophon"] = "MPIEnabled"; commands["screen.seqs"] = "MPIEnabled"; commands["summary.seqs"] = "MPIEnabled"; commands["cluster.split"] = "MPIEnabled"; - commands["shhh.seqs"] = "MPIEnabled"; + commands["shhh.flows"] = "MPIEnabled"; commands["sens.spec"] = "sens.spec"; commands["seq.error"] = "seq.error"; + commands["summary.tax"] = "summary.tax"; + commands["summary.qual"] = "summary.qual"; + commands["shhh.seqs"] = "shhh.seqs"; + commands["otu.association"] = "otu.association"; + commands["sort.seqs"] = "sort.seqs"; + commands["classify.tree"] = "classify.tree"; + commands["cooccurrence"] = "cooccurrence"; + commands["pcr.seqs"] = "pcr.seqs"; + commands["create.database"] = "create.database"; commands["quit"] = "MPIEnabled"; } @@ -269,6 +311,7 @@ CommandFactory::~CommandFactory(){ //This function calls the appropriate command fucntions based on user input. Command* CommandFactory::getCommand(string commandName, string optionString){ try { + delete command; //delete the old command //user has opted to redirect output from dir where input files are located to some other place @@ -312,8 +355,6 @@ Command* CommandFactory::getCommand(string commandName, string optionString){ else if(commandName == "get.oturep") { command = new GetOTURepCommand(optionString); } else if(commandName == "tree.shared") { command = new TreeGroupCommand(optionString); } else if(commandName == "dist.shared") { command = new MatrixOutputCommand(optionString); } - else if(commandName == "bootstrap.shared") { command = new BootSharedCommand(optionString); } - else if(commandName == "consensus") { command = new ConcensusCommand(optionString); } else if(commandName == "dist.seqs") { command = new DistanceCommand(optionString); } else if(commandName == "align.seqs") { command = new AlignCommand(optionString); } else if(commandName == "summary.seqs") { command = new SeqSummaryCommand(optionString); } @@ -321,8 +362,7 @@ Command* CommandFactory::getCommand(string commandName, string optionString){ else if(commandName == "reverse.seqs") { command = new ReverseSeqsCommand(optionString); } else if(commandName == "trim.seqs") { command = new TrimSeqsCommand(optionString); } else if(commandName == "trim.flows") { command = new TrimFlowsCommand(optionString); } - else if(commandName == "shhh.seqs") { command = new ShhherCommand(optionString); } - else if(commandName == "chimera.seqs") { command = new ChimeraSeqsCommand(optionString); } + else if(commandName == "shhh.flows") { command = new ShhherCommand(optionString); } else if(commandName == "list.seqs") { command = new ListSeqsCommand(optionString); } else if(commandName == "get.seqs") { command = new GetSeqsCommand(optionString); } else if(commandName == "remove.seqs") { command = new RemoveSeqsCommand(optionString); } @@ -336,6 +376,7 @@ Command* CommandFactory::getCommand(string commandName, string optionString){ else if(commandName == "chimera.ccode") { command = new ChimeraCcodeCommand(optionString); } else if(commandName == "chimera.check") { command = new ChimeraCheckCommand(optionString); } else if(commandName == "chimera.slayer") { command = new ChimeraSlayerCommand(optionString); } + else if(commandName == "chimera.uchime") { command = new ChimeraUchimeCommand(optionString); } else if(commandName == "chimera.pintail") { command = new ChimeraPintailCommand(optionString); } else if(commandName == "chimera.bellerophon") { command = new ChimeraBellerophonCommand(optionString); } else if(commandName == "phylotype") { command = new PhylotypeCommand(optionString); } @@ -382,6 +423,29 @@ Command* CommandFactory::getCommand(string commandName, string optionString){ else if(commandName == "corr.axes") { command = new CorrAxesCommand(optionString); } else if(commandName == "remove.rare") { command = new RemoveRareCommand(optionString); } else if(commandName == "merge.groups") { command = new MergeGroupsCommand(optionString); } + else if(commandName == "amova") { command = new AmovaCommand(optionString); } + else if(commandName == "homova") { command = new HomovaCommand(optionString); } + else if(commandName == "mantel") { command = new MantelCommand(optionString); } + else if(commandName == "make.fastq") { command = new MakeFastQCommand(optionString); } + else if(commandName == "get.current") { command = new GetCurrentCommand(optionString); } + else if(commandName == "set.current") { command = new SetCurrentCommand(optionString); } + else if(commandName == "anosim") { command = new AnosimCommand(optionString); } + else if(commandName == "make.shared") { command = new SharedCommand(optionString); } + else if(commandName == "get.commandinfo") { command = new GetCommandInfoCommand(optionString); } + else if(commandName == "deunique.tree") { command = new DeuniqueTreeCommand(optionString); } + else if(commandName == "count.seqs") { command = new CountSeqsCommand(optionString); } + else if(commandName == "count.groups") { command = new CountGroupsCommand(optionString); } + else if(commandName == "clear.memory") { command = new ClearMemoryCommand(optionString); } + else if(commandName == "summary.tax") { command = new SummaryTaxCommand(optionString); } + else if(commandName == "summary.qual") { command = new SummaryQualCommand(optionString); } + else if(commandName == "chimera.perseus") { command = new ChimeraPerseusCommand(optionString); } + else if(commandName == "shhh.seqs") { command = new ShhhSeqsCommand(optionString); } + else if(commandName == "otu.association") { command = new OTUAssociationCommand(optionString); } + else if(commandName == "sort.seqs") { command = new SortSeqsCommand(optionString); } + else if(commandName == "classify.tree") { command = new ClassifyTreeCommand(optionString); } + else if(commandName == "cooccurrence") { command = new CooccurrenceCommand(optionString); } + else if(commandName == "pcr.seqs") { command = new PcrSeqsCommand(optionString); } + else if(commandName == "create.database") { command = new CreateDatabaseCommand(optionString); } else { command = new NoCommand(optionString); } return command; @@ -440,8 +504,6 @@ Command* CommandFactory::getCommand(string commandName, string optionString, str else if(commandName == "get.oturep") { pipecommand = new GetOTURepCommand(optionString); } else if(commandName == "tree.shared") { pipecommand = new TreeGroupCommand(optionString); } else if(commandName == "dist.shared") { pipecommand = new MatrixOutputCommand(optionString); } - else if(commandName == "bootstrap.shared") { pipecommand = new BootSharedCommand(optionString); } - else if(commandName == "consensus") { pipecommand = new ConcensusCommand(optionString); } else if(commandName == "dist.seqs") { pipecommand = new DistanceCommand(optionString); } else if(commandName == "align.seqs") { pipecommand = new AlignCommand(optionString); } else if(commandName == "summary.seqs") { pipecommand = new SeqSummaryCommand(optionString); } @@ -449,8 +511,7 @@ Command* CommandFactory::getCommand(string commandName, string optionString, str else if(commandName == "reverse.seqs") { pipecommand = new ReverseSeqsCommand(optionString); } else if(commandName == "trim.seqs") { pipecommand = new TrimSeqsCommand(optionString); } else if(commandName == "trim.flows") { pipecommand = new TrimFlowsCommand(optionString); } - else if(commandName == "shhh.seqs") { pipecommand = new ShhherCommand(optionString); } - else if(commandName == "chimera.seqs") { pipecommand = new ChimeraSeqsCommand(optionString); } + else if(commandName == "shhh.flows") { pipecommand = new ShhherCommand(optionString); } else if(commandName == "list.seqs") { pipecommand = new ListSeqsCommand(optionString); } else if(commandName == "get.seqs") { pipecommand = new GetSeqsCommand(optionString); } else if(commandName == "remove.seqs") { pipecommand = new RemoveSeqsCommand(optionString); } @@ -463,6 +524,7 @@ Command* CommandFactory::getCommand(string commandName, string optionString, str else if(commandName == "classify.seqs") { pipecommand = new ClassifySeqsCommand(optionString); } else if(commandName == "chimera.ccode") { pipecommand = new ChimeraCcodeCommand(optionString); } else if(commandName == "chimera.check") { pipecommand = new ChimeraCheckCommand(optionString); } + else if(commandName == "chimera.uchime") { pipecommand = new ChimeraUchimeCommand(optionString); } else if(commandName == "chimera.slayer") { pipecommand = new ChimeraSlayerCommand(optionString); } else if(commandName == "chimera.pintail") { pipecommand = new ChimeraPintailCommand(optionString); } else if(commandName == "chimera.bellerophon") { pipecommand = new ChimeraBellerophonCommand(optionString); } @@ -509,6 +571,29 @@ Command* CommandFactory::getCommand(string commandName, string optionString, str else if(commandName == "corr.axes") { pipecommand = new CorrAxesCommand(optionString); } else if(commandName == "remove.rare") { pipecommand = new RemoveRareCommand(optionString); } else if(commandName == "merge.groups") { pipecommand = new MergeGroupsCommand(optionString); } + else if(commandName == "amova") { pipecommand = new AmovaCommand(optionString); } + else if(commandName == "homova") { pipecommand = new HomovaCommand(optionString); } + else if(commandName == "mantel") { pipecommand = new MantelCommand(optionString); } + else if(commandName == "anosim") { pipecommand = new AnosimCommand(optionString); } + else if(commandName == "make.fastq") { pipecommand = new MakeFastQCommand(optionString); } + else if(commandName == "get.current") { pipecommand = new GetCurrentCommand(optionString); } + else if(commandName == "set.current") { pipecommand = new SetCurrentCommand(optionString); } + else if(commandName == "make.shared") { pipecommand = new SharedCommand(optionString); } + else if(commandName == "get.commandinfo") { pipecommand = new GetCommandInfoCommand(optionString); } + else if(commandName == "deunique.tree") { pipecommand = new DeuniqueTreeCommand(optionString); } + else if(commandName == "count.seqs") { pipecommand = new CountSeqsCommand(optionString); } + else if(commandName == "count.groups") { pipecommand = new CountGroupsCommand(optionString); } + else if(commandName == "clear.memory") { pipecommand = new ClearMemoryCommand(optionString); } + else if(commandName == "summary.tax") { pipecommand = new SummaryTaxCommand(optionString); } + else if(commandName == "summary.qual") { pipecommand = new SummaryQualCommand(optionString); } + else if(commandName == "chimera.perseus") { pipecommand = new ChimeraPerseusCommand(optionString); } + else if(commandName == "shhh.seqs") { pipecommand = new ShhhSeqsCommand(optionString); } + else if(commandName == "otu.association") { pipecommand = new OTUAssociationCommand(optionString); } + else if(commandName == "sort.seqs") { pipecommand = new SortSeqsCommand(optionString); } + else if(commandName == "classify.tree") { pipecommand = new ClassifyTreeCommand(optionString); } + else if(commandName == "cooccurrence") { pipecommand = new CooccurrenceCommand(optionString); } + else if(commandName == "pcr.seqs") { pipecommand = new PcrSeqsCommand(optionString); } + else if(commandName == "create.database") { pipecommand = new CreateDatabaseCommand(optionString); } else { pipecommand = new NoCommand(optionString); } return pipecommand; @@ -555,8 +640,6 @@ Command* CommandFactory::getCommand(string commandName){ else if(commandName == "get.oturep") { shellcommand = new GetOTURepCommand(); } else if(commandName == "tree.shared") { shellcommand = new TreeGroupCommand(); } else if(commandName == "dist.shared") { shellcommand = new MatrixOutputCommand(); } - else if(commandName == "bootstrap.shared") { shellcommand = new BootSharedCommand(); } - else if(commandName == "consensus") { shellcommand = new ConcensusCommand(); } else if(commandName == "dist.seqs") { shellcommand = new DistanceCommand(); } else if(commandName == "align.seqs") { shellcommand = new AlignCommand(); } else if(commandName == "summary.seqs") { shellcommand = new SeqSummaryCommand(); } @@ -564,8 +647,7 @@ Command* CommandFactory::getCommand(string commandName){ else if(commandName == "reverse.seqs") { shellcommand = new ReverseSeqsCommand(); } else if(commandName == "trim.seqs") { shellcommand = new TrimSeqsCommand(); } else if(commandName == "trim.flows") { shellcommand = new TrimFlowsCommand(); } - else if(commandName == "shhh.seqs") { shellcommand = new ShhherCommand(); } - else if(commandName == "chimera.seqs") { shellcommand = new ChimeraSeqsCommand(); } + else if(commandName == "shhh.flows") { shellcommand = new ShhherCommand(); } else if(commandName == "list.seqs") { shellcommand = new ListSeqsCommand(); } else if(commandName == "get.seqs") { shellcommand = new GetSeqsCommand(); } else if(commandName == "remove.seqs") { shellcommand = new RemoveSeqsCommand(); } @@ -579,6 +661,7 @@ Command* CommandFactory::getCommand(string commandName){ else if(commandName == "chimera.ccode") { shellcommand = new ChimeraCcodeCommand(); } else if(commandName == "chimera.check") { shellcommand = new ChimeraCheckCommand(); } else if(commandName == "chimera.slayer") { shellcommand = new ChimeraSlayerCommand(); } + else if(commandName == "chimera.uchime") { shellcommand = new ChimeraUchimeCommand(); } else if(commandName == "chimera.pintail") { shellcommand = new ChimeraPintailCommand(); } else if(commandName == "chimera.bellerophon") { shellcommand = new ChimeraBellerophonCommand(); } else if(commandName == "phylotype") { shellcommand = new PhylotypeCommand(); } @@ -624,6 +707,29 @@ Command* CommandFactory::getCommand(string commandName){ else if(commandName == "corr.axes") { shellcommand = new CorrAxesCommand(); } else if(commandName == "remove.rare") { shellcommand = new RemoveRareCommand(); } else if(commandName == "merge.groups") { shellcommand = new MergeGroupsCommand(); } + else if(commandName == "amova") { shellcommand = new AmovaCommand(); } + else if(commandName == "homova") { shellcommand = new HomovaCommand(); } + else if(commandName == "mantel") { shellcommand = new MantelCommand(); } + else if(commandName == "anosim") { shellcommand = new AnosimCommand(); } + else if(commandName == "make.fastq") { shellcommand = new MakeFastQCommand(); } + else if(commandName == "get.current") { shellcommand = new GetCurrentCommand(); } + else if(commandName == "set.current") { shellcommand = new SetCurrentCommand(); } + else if(commandName == "make.shared") { shellcommand = new SharedCommand(); } + else if(commandName == "get.commandinfo") { shellcommand = new GetCommandInfoCommand(); } + else if(commandName == "deunique.tree") { shellcommand = new DeuniqueTreeCommand(); } + else if(commandName == "count.seqs") { shellcommand = new CountSeqsCommand(); } + else if(commandName == "count.groups") { shellcommand = new CountGroupsCommand(); } + else if(commandName == "clear.memory") { shellcommand = new ClearMemoryCommand(); } + else if(commandName == "summary.tax") { shellcommand = new SummaryTaxCommand(); } + else if(commandName == "summary.qual") { shellcommand = new SummaryQualCommand(); } + else if(commandName == "chimera.perseus") { shellcommand = new ChimeraPerseusCommand(); } + else if(commandName == "shhh.seqs") { shellcommand = new ShhhSeqsCommand(); } + else if(commandName == "otu.association") { shellcommand = new OTUAssociationCommand(); } + else if(commandName == "sort.seqs") { shellcommand = new SortSeqsCommand(); } + else if(commandName == "classify.tree") { shellcommand = new ClassifyTreeCommand(); } + else if(commandName == "cooccurrence") { shellcommand = new CooccurrenceCommand(); } + else if(commandName == "pcr.seqs") { shellcommand = new PcrSeqsCommand(); } + else if(commandName == "create.database") { shellcommand = new CreateDatabaseCommand(); } else { shellcommand = new NoCommand(); } return shellcommand; @@ -649,7 +755,7 @@ Command* CommandFactory::getCommand(){ exit(1); } } -/***********************************************************************/ +***********************************************************************/ bool CommandFactory::isValidCommand(string command) { try {