]> git.donarmstrong.com Git - mothur.git/blobdiff - binsequencecommand.cpp
added get.repseqs command, started matrix output command
[mothur.git] / binsequencecommand.cpp
index 5db29329cb28a569542581bc4a47b1cb38b6a7bf..7810ea9f793255e31e44c854a5a4c21639019c60 100644 (file)
@@ -57,7 +57,7 @@ int BinSeqCommand::execute(){
                }
                
                //read list file
-               read = new ReadPhilFile(globaldata->getListFile());     
+               read = new ReadOTUFile(globaldata->getListFile());      
                read->read(&*globaldata); 
                
                input = globaldata->ginput;
@@ -67,7 +67,6 @@ int BinSeqCommand::execute(){
                        
                        if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(list->getLabel()) == 1){
                                
-                               //create output file
                                string outputFileName = getRootName(globaldata->getListFile()) + list->getLabel() + ".fasta";
                                openOutputFile(outputFileName, out);
 
@@ -75,6 +74,7 @@ int BinSeqCommand::execute(){
                                
                                //for each bin in the list vector
                                for (int i = 0; i < list->size(); i++) {
+
                                        binnames = list->get(i);
                                        while (binnames.find_first_of(',') != -1) { 
                                                name = binnames.substr(0,binnames.find_first_of(','));
@@ -83,7 +83,7 @@ int BinSeqCommand::execute(){
                                                //do work for that name
                                                sequence = fasta->getSequence(name);
                                                if (sequence != "not found") {
-                                                       name = name + "bin" + toString(i+1);
+                                                       name = name + "|" + toString(i+1);
                                                        out << ">" << name << endl;
                                                        out << sequence << endl;
                                                }else { 
@@ -97,7 +97,7 @@ int BinSeqCommand::execute(){
                                        //get last name
                                        sequence = fasta->getSequence(binnames);
                                        if (sequence != "not found") {
-                                               name = binnames + "bin" + toString(i+1);
+                                               name = binnames + '|' + toString(i+1);
                                                out << ">" << name << endl;
                                                out << sequence << endl;
                                        }else { 
@@ -105,9 +105,12 @@ int BinSeqCommand::execute(){
                                                remove(outputFileName.c_str());
                                                return 0;
                                        }
+                                       
                                }
+                               out.close();
                        }
                        
+                       delete list;
                        list = input->getListVector();
                        count++;
                }