]> git.donarmstrong.com Git - mothur.git/blobdiff - listotulabelscommand.cpp
added SequenceCountParser class to parse the count table by group. added count parame...
[mothur.git] / listotulabelscommand.cpp
index becfae3ff949f0a3f8bba42604459f8e4267dc65..4a12197b9f21534173c92f6d99c389a3aabb907f 100644 (file)
@@ -33,11 +33,11 @@ vector<string> ListOtuLabelsCommand::setParameters(){
 string ListOtuLabelsCommand::getHelpString(){  
        try {
                string helpString = "";
-               helpString += "The list.labels lists otu labels from shared or relabund file. The results can be used by the get.labels to select specific otus with the output from classify.otu, otu.association, or corr.axes.\n";
-               helpString += "The list.labels parameters are: shared, relabund, label and groups.\n";
+               helpString += "The list.otulabels lists otu labels from shared or relabund file. The results can be used by the get.otulabels to select specific otus with the output from classify.otu, otu.association, or corr.axes.\n";
+               helpString += "The list.otulabels parameters are: shared, relabund, label and groups.\n";
                helpString += "The label parameter is used to analyze specific labels in your input.\n";
                helpString += "The groups parameter allows you to specify which of the groups you would like analyzed.\n";
-               helpString += "The list.labels commmand should be in the following format: \n";
+               helpString += "The list.otulabels commmand should be in the following format: \n";
                helpString += "list.otulabels(shared=yourSharedFile, groups=yourGroup1-yourGroup2)\n";
                return helpString;
        }
@@ -46,6 +46,27 @@ string ListOtuLabelsCommand::getHelpString(){
                exit(1);
        }
 }
+//**********************************************************************************************************************
+string ListOtuLabelsCommand::getOutputFileNameTag(string type, string inputName=""){   
+       try {
+        string outputFileName = "";
+               map<string, vector<string> >::iterator it;
+        
+        //is this a type this command creates
+        it = outputTypes.find(type);
+        if (it == outputTypes.end()) {  m->mothurOut("[ERROR]: this command doesn't create a " + type + " output file.\n"); }
+        else {
+            if (type == "otulabels")             {   outputFileName =  "otulabels";       }
+            else { m->mothurOut("[ERROR]: No definition for type " + type + " output file tag.\n"); m->control_pressed = true;  }
+        }
+        return outputFileName;
+       }
+       catch(exception& e) {
+               m->errorOut(e, "ListOtuLabelsCommand", "getOutputFileNameTag");
+               exit(1);
+       }
+}
+
 //**********************************************************************************************************************
 ListOtuLabelsCommand::ListOtuLabelsCommand(){  
        try {
@@ -344,7 +365,7 @@ int ListOtuLabelsCommand::execute(){
 int ListOtuLabelsCommand::createList(vector<SharedRAbundVector*>& lookup){
        try {
         
-        string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + ".otu.labels";
+        string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + "." + getOutputFileNameTag("otulabels");
         outputNames.push_back(outputFileName);  outputTypes["otulabels"].push_back(outputFileName);
                ofstream out;
                m->openOutputFile(outputFileName, out);
@@ -366,7 +387,7 @@ int ListOtuLabelsCommand::createList(vector<SharedRAbundVector*>& lookup){
 int ListOtuLabelsCommand::createList(vector<SharedRAbundFloatVector*>& lookup){
        try {
         
-        string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + ".otu.labels";
+        string outputFileName = outputDir + m->getRootName(m->getSimpleName(inputFileName)) + lookup[0]->getLabel() + "." + getOutputFileNameTag("otulabels");
         outputNames.push_back(outputFileName);  outputTypes["accnos"].push_back(outputFileName);
                ofstream out;
                m->openOutputFile(outputFileName, out);