]> git.donarmstrong.com Git - mothur.git/blobdiff - summarycommand.cpp
fixed bug in read.tree updates help and validparameters strings, added ability for...
[mothur.git] / summarycommand.cpp
index 06cc9b027de971c65204e3254ef07cc1eacae320..05fc6e8c77057c00bd64e9c057f8784ea71a7188 100644 (file)
 #include "summarycommand.h"
 #include "ace.h"
 #include "sobs.h"
+#include "nseqs.h"
 #include "chao1.h"
 #include "bootstrap.h"
 #include "simpson.h"
 #include "npshannon.h"
 #include "shannon.h"
 #include "jackknife.h"
+#include "geom.h"
+#include "logsd.h"
+#include "qstat.h"
+#include "bergerparker.h"
+#include "bstick.h"
 
 //**********************************************************************************************************************
 
@@ -31,11 +37,21 @@ SummaryCommand::SummaryCommand(){
                                        sumCalculators.push_back(new Sobs());
                                }else if(globaldata->Estimators[i] == "chao"){
                                        sumCalculators.push_back(new Chao1());
+                               }else if(globaldata->Estimators[i] == "geom"){
+                                       sumCalculators.push_back(new Geom());
+                               }else if(globaldata->Estimators[i] == "logsd"){
+                                       sumCalculators.push_back(new LogSD());
+                               }else if(globaldata->Estimators[i] == "qstat"){
+                                       sumCalculators.push_back(new QStat());
+                               }else if(globaldata->Estimators[i] == "bergerparker"){
+                                       sumCalculators.push_back(new BergerParker());
+                               }else if(globaldata->Estimators[i] == "bstick"){
+                                       sumCalculators.push_back(new BStick());
                                }else if(globaldata->Estimators[i] == "ace"){
                                        convert(globaldata->getAbund(), abund);
                                        if(abund < 5)
                                                abund = 10;
-                                       sumCalculators.push_back(new Ace());
+                                       sumCalculators.push_back(new Ace(abund));
                                }else if(globaldata->Estimators[i] == "jack"){
                                        sumCalculators.push_back(new Jackknife());
                                }else if(globaldata->Estimators[i] == "shannon"){
@@ -46,6 +62,8 @@ SummaryCommand::SummaryCommand(){
                                        sumCalculators.push_back(new Simpson());
                                }else if(globaldata->Estimators[i] == "bootstrap"){
                                        sumCalculators.push_back(new Bootstrap());
+                               }else if (globaldata->Estimators[i] == "nseqs") { 
+                                       sumCalculators.push_back(new NSeqs());
                                }
                        }
                }
@@ -104,16 +122,16 @@ int SummaryCommand::execute(){
                        if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(sabund->getLabel()) == 1){                      
        
                                cout << sabund->getLabel() << '\t' << count << endl;
-                       
+                               
                                outputFileHandle << sabund->getLabel();
                                for(int i=0;i<sumCalculators.size();i++){
                                        vector<double> data = sumCalculators[i]->getValues(sabund);
                                        outputFileHandle << '\t';
                                        sumCalculators[i]->print(outputFileHandle);
                                }
+                               
                                outputFileHandle << endl;
                        }
-               
                        sabund = input->getSAbundVector();
                        count++;
                }