From addc715b6d7ea52440751cec10edad03e1a19b37 Mon Sep 17 00:00:00 2001 From: ryabin Date: Wed, 18 Feb 2009 19:28:34 +0000 Subject: [PATCH] Added get.line command. Added get.label command. Added get.group command. Added parameter and parameter value error checking. Modified ace to allow changing the abund variable. Made it so you don't need a space after the comma when entering parameters. Added error checking for invalid labels. Added a new convert method that tests if a given string can be converted into an int. --- Mothur.xcodeproj/project.pbxproj | 417 ++++++++++++++----------------- ace.cpp | 1 + ace.h | 2 +- collect.cpp | 35 ++- collect.h | 3 +- collectcommand.cpp | 14 +- collectcommand.h | 8 +- collectsharedcommand.cpp | 11 +- commandfactory.cpp | 8 +- errorchecking.cpp | 336 ++++++++++++++++++++++++- errorchecking.h | 11 +- globaldata.cpp | 16 +- globaldata.hpp | 12 +- helpcommand.cpp | 19 ++ rarefactcommand.cpp | 3 + rarefactcommand.h | 2 +- summarycommand.cpp | 3 + summarycommand.h | 1 + utilities.hpp | 19 +- validcommands.cpp | 3 + validparameter.cpp | 5 +- 21 files changed, 663 insertions(+), 266 deletions(-) diff --git a/Mothur.xcodeproj/project.pbxproj b/Mothur.xcodeproj/project.pbxproj index 93e0e58..d3716c7 100644 --- a/Mothur.xcodeproj/project.pbxproj +++ b/Mothur.xcodeproj/project.pbxproj @@ -10,18 +10,10 @@ 372E12700F26365B0095CF7E /* readotucommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 372E126F0F26365B0095CF7E /* readotucommand.cpp */; }; 372E12960F263D5A0095CF7E /* readdistcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 372E12950F263D5A0095CF7E /* readdistcommand.cpp */; }; 372E12ED0F264D320095CF7E /* commandfactory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 372E12EC0F264D320095CF7E /* commandfactory.cpp */; }; - 374610780F40645300460C57 /* unifracweightedcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 374610770F40645300460C57 /* unifracweightedcommand.cpp */; }; - 3746107E0F4064D100460C57 /* weighted.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3746107D0F4064D100460C57 /* weighted.cpp */; }; - 374610830F40652400460C57 /* unweighted.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 374610820F40652400460C57 /* unweighted.cpp */; }; - 3746109D0F40657600460C57 /* unifracunweightedcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3746109C0F40657600460C57 /* unifracunweightedcommand.cpp */; }; 379293C30F2DE73400B9034A /* treemap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 379293C20F2DE73400B9034A /* treemap.cpp */; }; - 379294700F2E191800B9034A /* parsimonycommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3792946F0F2E191800B9034A /* parsimonycommand.cpp */; }; - 3792948A0F2E258500B9034A /* parsimony.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 379294890F2E258500B9034A /* parsimony.cpp */; }; 37AD4CE40F28AEA300AA2D49 /* sharedlistvector.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37AD4CE30F28AEA300AA2D49 /* sharedlistvector.cpp */; }; 37AD4DBB0F28E2FE00AA2D49 /* tree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37AD4DBA0F28E2FE00AA2D49 /* tree.cpp */; }; 37AD4DCA0F28F3DD00AA2D49 /* readtree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37AD4DC90F28F3DD00AA2D49 /* readtree.cpp */; }; - 37AFC71F0F445386005F492D /* sharedsobscollectsummary.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37AFC71E0F445386005F492D /* sharedsobscollectsummary.cpp */; }; - 37AFC7A30F44703E005F492D /* readsharedcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37AFC7A20F44703E005F492D /* readsharedcommand.cpp */; }; 37B28F680F27590100808A62 /* deconvolutecommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37B28F670F27590100808A62 /* deconvolutecommand.cpp */; }; 37D928550F21331F001D4494 /* ace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37D927B80F21331F001D4494 /* ace.cpp */; }; 37D928560F21331F001D4494 /* averagelinkage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37D927BA0F21331F001D4494 /* averagelinkage.cpp */; }; @@ -93,7 +85,11 @@ 37D9289F0F21331F001D4494 /* validparameter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37D928530F21331F001D4494 /* validparameter.cpp */; }; 37E5F3E30F29FD4200F8D827 /* treenode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37E5F3E20F29FD4200F8D827 /* treenode.cpp */; }; 37E5F4920F2A3DA800F8D827 /* readtreecommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */; }; + 7E44EBD10F3235D900B0D45D /* makefile in Sources */ = {isa = PBXBuildFile; fileRef = 7E44EBD00F32358B00B0D45D /* makefile */; }; 8DD76F6A0486A84900D96B5E /* Mothur.1 in CopyFiles */ = {isa = PBXBuildFile; fileRef = C6859E8B029090EE04C91782 /* Mothur.1 */; }; + EBA52D2C0F378B0F00122C15 /* getgroupcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EBA52D2B0F378B0F00122C15 /* getgroupcommand.cpp */; }; + EBFD67840F33876C00883537 /* getlabelcommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EBFD67830F33876C00883537 /* getlabelcommand.cpp */; }; + EBFD67E80F339AAA00883537 /* getlinecommand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EBFD67E70F339AAA00883537 /* getlinecommand.cpp */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -110,188 +106,178 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 372E126E0F26365B0095CF7E /* readotucommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotucommand.h; sourceTree = ""; }; - 372E126F0F26365B0095CF7E /* readotucommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotucommand.cpp; sourceTree = ""; }; - 372E12940F263D5A0095CF7E /* readdistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readdistcommand.h; sourceTree = ""; }; - 372E12950F263D5A0095CF7E /* readdistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readdistcommand.cpp; sourceTree = ""; }; - 372E12EC0F264D320095CF7E /* commandfactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandfactory.cpp; sourceTree = ""; }; - 374610760F40645300460C57 /* unifracweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracweightedcommand.h; sourceTree = ""; }; - 374610770F40645300460C57 /* unifracweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracweightedcommand.cpp; sourceTree = ""; }; - 3746107C0F4064D100460C57 /* weighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = weighted.h; sourceTree = ""; }; - 3746107D0F4064D100460C57 /* weighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = weighted.cpp; sourceTree = ""; }; - 374610810F40652400460C57 /* unweighted.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unweighted.h; sourceTree = ""; }; - 374610820F40652400460C57 /* unweighted.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unweighted.cpp; sourceTree = ""; }; - 3746109B0F40657600460C57 /* unifracunweightedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unifracunweightedcommand.h; sourceTree = ""; }; - 3746109C0F40657600460C57 /* unifracunweightedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unifracunweightedcommand.cpp; sourceTree = ""; }; - 379293C10F2DE73400B9034A /* treemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treemap.h; sourceTree = ""; }; - 379293C20F2DE73400B9034A /* treemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treemap.cpp; sourceTree = ""; }; - 3792946E0F2E191800B9034A /* parsimonycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimonycommand.h; sourceTree = ""; }; - 3792946F0F2E191800B9034A /* parsimonycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimonycommand.cpp; sourceTree = ""; }; - 379294880F2E258500B9034A /* parsimony.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parsimony.h; sourceTree = ""; }; - 379294890F2E258500B9034A /* parsimony.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parsimony.cpp; sourceTree = ""; }; - 3792948D0F2E271100B9034A /* treecalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treecalculator.h; sourceTree = ""; }; - 37AD4CE20F28AEA300AA2D49 /* sharedlistvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlistvector.h; sourceTree = ""; }; - 37AD4CE30F28AEA300AA2D49 /* sharedlistvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlistvector.cpp; sourceTree = ""; }; - 37AD4DB90F28E2FE00AA2D49 /* tree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tree.h; sourceTree = ""; }; - 37AD4DBA0F28E2FE00AA2D49 /* tree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tree.cpp; sourceTree = ""; }; - 37AD4DC80F28F3DD00AA2D49 /* readtree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtree.h; sourceTree = ""; }; - 37AD4DC90F28F3DD00AA2D49 /* readtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtree.cpp; sourceTree = ""; }; - 37AFC71D0F445386005F492D /* sharedsobscollectsummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobscollectsummary.h; sourceTree = ""; }; - 37AFC71E0F445386005F492D /* sharedsobscollectsummary.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobscollectsummary.cpp; sourceTree = ""; }; - 37AFC7A10F44703E005F492D /* readsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readsharedcommand.h; sourceTree = ""; }; - 37AFC7A20F44703E005F492D /* readsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readsharedcommand.cpp; sourceTree = ""; }; - 37B28F660F27590100808A62 /* deconvolutecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deconvolutecommand.h; sourceTree = ""; }; - 37B28F670F27590100808A62 /* deconvolutecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deconvolutecommand.cpp; sourceTree = ""; }; - 37D927B80F21331F001D4494 /* ace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ace.cpp; sourceTree = ""; }; - 37D927B90F21331F001D4494 /* ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ace.h; sourceTree = ""; }; - 37D927BA0F21331F001D4494 /* averagelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = averagelinkage.cpp; sourceTree = ""; }; - 37D927BB0F21331F001D4494 /* bootstrap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrap.cpp; sourceTree = ""; }; - 37D927BC0F21331F001D4494 /* bootstrap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrap.h; sourceTree = ""; }; - 37D927BD0F21331F001D4494 /* calculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calculator.cpp; sourceTree = ""; }; - 37D927BE0F21331F001D4494 /* calculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = calculator.h; sourceTree = ""; }; - 37D927BF0F21331F001D4494 /* chao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = chao1.cpp; sourceTree = ""; }; - 37D927C00F21331F001D4494 /* chao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = chao1.h; sourceTree = ""; }; - 37D927C10F21331F001D4494 /* cluster.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cluster.cpp; sourceTree = ""; }; - 37D927C20F21331F001D4494 /* cluster.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cluster.hpp; sourceTree = ""; }; - 37D927C30F21331F001D4494 /* clustercommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clustercommand.cpp; sourceTree = ""; }; - 37D927C40F21331F001D4494 /* clustercommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clustercommand.h; sourceTree = ""; }; - 37D927C50F21331F001D4494 /* collect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collect.cpp; sourceTree = ""; }; - 37D927C60F21331F001D4494 /* collect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collect.h; sourceTree = ""; }; - 37D927C70F21331F001D4494 /* collectcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectcommand.cpp; sourceTree = ""; }; - 37D927C80F21331F001D4494 /* collectcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectcommand.h; sourceTree = ""; }; - 37D927C90F21331F001D4494 /* collectdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectdisplay.h; sourceTree = ""; }; - 37D927CA0F21331F001D4494 /* collectorscurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectorscurvedata.h; sourceTree = ""; }; - 37D927CB0F21331F001D4494 /* collectsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectsharedcommand.cpp; sourceTree = ""; }; - 37D927CC0F21331F001D4494 /* collectsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectsharedcommand.h; sourceTree = ""; }; - 37D927CD0F21331F001D4494 /* command.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = command.hpp; sourceTree = ""; }; - 37D927CF0F21331F001D4494 /* commandfactory.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandfactory.hpp; sourceTree = ""; }; - 37D927D00F21331F001D4494 /* commandoptionparser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandoptionparser.cpp; sourceTree = ""; }; - 37D927D10F21331F001D4494 /* commandoptionparser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandoptionparser.hpp; sourceTree = ""; }; - 37D927D20F21331F001D4494 /* completelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = completelinkage.cpp; sourceTree = ""; }; - 37D927D30F21331F001D4494 /* database.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = database.cpp; sourceTree = ""; }; - 37D927D40F21331F001D4494 /* database.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = database.hpp; sourceTree = ""; }; - 37D927D50F21331F001D4494 /* datavector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = datavector.hpp; sourceTree = ""; }; - 37D927D60F21331F001D4494 /* display.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = display.h; sourceTree = ""; }; - 37D927D70F21331F001D4494 /* engine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = engine.cpp; sourceTree = ""; }; - 37D927D80F21331F001D4494 /* engine.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = engine.hpp; sourceTree = ""; }; - 37D927D90F21331F001D4494 /* errorchecking.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = errorchecking.cpp; sourceTree = ""; }; - 37D927DA0F21331F001D4494 /* errorchecking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = errorchecking.h; sourceTree = ""; }; - 37D927DB0F21331F001D4494 /* fastamap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fastamap.cpp; sourceTree = ""; }; - 37D927DC0F21331F001D4494 /* fastamap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fastamap.h; sourceTree = ""; }; - 37D927DD0F21331F001D4494 /* fileoutput.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileoutput.cpp; sourceTree = ""; }; - 37D927DE0F21331F001D4494 /* fileoutput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileoutput.h; sourceTree = ""; }; - 37D927DF0F21331F001D4494 /* globaldata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = globaldata.cpp; sourceTree = ""; }; - 37D927E00F21331F001D4494 /* globaldata.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = globaldata.hpp; sourceTree = ""; }; - 37D927E10F21331F001D4494 /* groupmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = groupmap.cpp; sourceTree = ""; }; - 37D927E20F21331F001D4494 /* groupmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = groupmap.h; sourceTree = ""; }; - 37D927E30F21331F001D4494 /* helpcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = helpcommand.cpp; sourceTree = ""; }; - 37D927E40F21331F001D4494 /* helpcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = helpcommand.h; sourceTree = ""; }; - 37D927E50F21331F001D4494 /* inputdata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = inputdata.cpp; sourceTree = ""; }; - 37D927E60F21331F001D4494 /* inputdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inputdata.h; sourceTree = ""; }; - 37D927E70F21331F001D4494 /* jackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jackknife.cpp; sourceTree = ""; }; - 37D927E80F21331F001D4494 /* jackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jackknife.h; sourceTree = ""; }; - 37D927E90F21331F001D4494 /* kmer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmer.cpp; sourceTree = ""; }; - 37D927EA0F21331F001D4494 /* kmer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmer.hpp; sourceTree = ""; }; - 37D927EB0F21331F001D4494 /* kmerdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmerdb.cpp; sourceTree = ""; }; - 37D927EC0F21331F001D4494 /* kmerdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmerdb.hpp; sourceTree = ""; }; - 37D927ED0F21331F001D4494 /* listvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = listvector.cpp; sourceTree = ""; }; - 37D927EE0F21331F001D4494 /* listvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = listvector.hpp; sourceTree = ""; }; - 37D927EF0F21331F001D4494 /* mothur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mothur.cpp; sourceTree = ""; }; - 37D927F00F21331F001D4494 /* nameassignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nameassignment.cpp; sourceTree = ""; }; - 37D927F10F21331F001D4494 /* nameassignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nameassignment.hpp; sourceTree = ""; }; - 37D927F20F21331F001D4494 /* nocommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nocommand.cpp; sourceTree = ""; }; - 37D927F30F21331F001D4494 /* nocommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nocommand.h; sourceTree = ""; }; - 37D927F40F21331F001D4494 /* npshannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npshannon.cpp; sourceTree = ""; }; - 37D927F50F21331F001D4494 /* npshannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = npshannon.h; sourceTree = ""; }; - 37D927F60F21331F001D4494 /* observable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = observable.h; sourceTree = ""; }; - 37D927F70F21331F001D4494 /* ordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ordervector.cpp; sourceTree = ""; }; - 37D927F80F21331F001D4494 /* ordervector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = ordervector.hpp; sourceTree = ""; }; - 37D927F90F21331F001D4494 /* parselistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parselistcommand.cpp; sourceTree = ""; }; - 37D927FA0F21331F001D4494 /* parselistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parselistcommand.h; sourceTree = ""; }; - 37D927FB0F21331F001D4494 /* progress.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = progress.cpp; sourceTree = ""; }; - 37D927FC0F21331F001D4494 /* progress.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = progress.hpp; sourceTree = ""; }; - 37D927FD0F21331F001D4494 /* quitcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quitcommand.cpp; sourceTree = ""; }; - 37D927FE0F21331F001D4494 /* quitcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quitcommand.h; sourceTree = ""; }; - 37D927FF0F21331F001D4494 /* rabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rabundvector.cpp; sourceTree = ""; }; - 37D928000F21331F001D4494 /* rabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = rabundvector.hpp; sourceTree = ""; }; - 37D928010F21331F001D4494 /* rarecalc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarecalc.cpp; sourceTree = ""; }; - 37D928020F21331F001D4494 /* rarecalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarecalc.h; sourceTree = ""; }; - 37D928030F21331F001D4494 /* raredisplay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = raredisplay.cpp; sourceTree = ""; }; - 37D928040F21331F001D4494 /* raredisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = raredisplay.h; sourceTree = ""; }; - 37D928050F21331F001D4494 /* rarefact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefact.cpp; sourceTree = ""; }; - 37D928060F21331F001D4494 /* rarefact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefact.h; sourceTree = ""; }; - 37D928070F21331F001D4494 /* rarefactcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactcommand.cpp; sourceTree = ""; }; - 37D928080F21331F001D4494 /* rarefactcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactcommand.h; sourceTree = ""; }; - 37D928090F21331F001D4494 /* rarefactioncurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactioncurvedata.h; sourceTree = ""; }; - 37D9280A0F21331F001D4494 /* rarefactsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactsharedcommand.cpp; sourceTree = ""; }; - 37D9280B0F21331F001D4494 /* rarefactsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactsharedcommand.h; sourceTree = ""; }; - 37D928120F21331F001D4494 /* readmatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readmatrix.cpp; sourceTree = ""; }; - 37D928130F21331F001D4494 /* readmatrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = readmatrix.hpp; sourceTree = ""; }; - 37D9281A0F21331F001D4494 /* sabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sabundvector.cpp; sourceTree = ""; }; - 37D9281B0F21331F001D4494 /* sabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sabundvector.hpp; sourceTree = ""; }; - 37D9281C0F21331F001D4494 /* sequence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequence.cpp; sourceTree = ""; }; - 37D9281D0F21331F001D4494 /* sequence.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sequence.hpp; sourceTree = ""; }; - 37D9281E0F21331F001D4494 /* shannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shannon.cpp; sourceTree = ""; }; - 37D9281F0F21331F001D4494 /* shannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shannon.h; sourceTree = ""; }; - 37D928200F21331F001D4494 /* shared.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shared.cpp; sourceTree = ""; }; - 37D928210F21331F001D4494 /* shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shared.h; sourceTree = ""; }; - 37D928220F21331F001D4494 /* sharedace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedace.cpp; sourceTree = ""; }; - 37D928230F21331F001D4494 /* sharedace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedace.h; sourceTree = ""; }; - 37D928240F21331F001D4494 /* sharedchao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedchao1.cpp; sourceTree = ""; }; - 37D928250F21331F001D4494 /* sharedchao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedchao1.h; sourceTree = ""; }; - 37D928260F21331F001D4494 /* sharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedcommand.cpp; sourceTree = ""; }; - 37D928270F21331F001D4494 /* sharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedcommand.h; sourceTree = ""; }; - 37D928280F21331F001D4494 /* sharedjabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjabund.cpp; sourceTree = ""; }; - 37D928290F21331F001D4494 /* sharedjabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjabund.h; sourceTree = ""; }; - 37D9282A0F21331F001D4494 /* sharedjclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjclass.cpp; sourceTree = ""; }; - 37D9282B0F21331F001D4494 /* sharedjclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjclass.h; sourceTree = ""; }; - 37D9282C0F21331F001D4494 /* sharedjest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjest.cpp; sourceTree = ""; }; - 37D9282D0F21331F001D4494 /* sharedjest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjest.h; sourceTree = ""; }; - 37D9282E0F21331F001D4494 /* sharedordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedordervector.cpp; sourceTree = ""; }; - 37D9282F0F21331F001D4494 /* sharedordervector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedordervector.h; sourceTree = ""; }; - 37D928300F21331F001D4494 /* sharedrabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedrabundvector.cpp; sourceTree = ""; }; - 37D928310F21331F001D4494 /* sharedrabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedrabundvector.h; sourceTree = ""; }; - 37D928320F21331F001D4494 /* sharedsabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsabundvector.cpp; sourceTree = ""; }; - 37D928330F21331F001D4494 /* sharedsabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsabundvector.h; sourceTree = ""; }; - 37D928340F21331F001D4494 /* sharedsobs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobs.cpp; sourceTree = ""; }; - 37D928350F21331F001D4494 /* sharedsobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobs.h; sourceTree = ""; }; - 37D928360F21331F001D4494 /* sharedsorabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorabund.cpp; sourceTree = ""; }; - 37D928370F21331F001D4494 /* sharedsorabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorabund.h; sourceTree = ""; }; - 37D928380F21331F001D4494 /* sharedsorclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorclass.cpp; sourceTree = ""; }; - 37D928390F21331F001D4494 /* sharedsorclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorclass.h; sourceTree = ""; }; - 37D9283A0F21331F001D4494 /* sharedsorest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorest.cpp; sourceTree = ""; }; - 37D9283B0F21331F001D4494 /* sharedsorest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorest.h; sourceTree = ""; }; - 37D9283C0F21331F001D4494 /* sharedthetan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetan.cpp; sourceTree = ""; }; - 37D9283D0F21331F001D4494 /* sharedthetan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetan.h; sourceTree = ""; }; - 37D9283E0F21331F001D4494 /* sharedthetayc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetayc.cpp; sourceTree = ""; }; - 37D9283F0F21331F001D4494 /* sharedthetayc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetayc.h; sourceTree = ""; }; - 37D928400F21331F001D4494 /* simpson.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = simpson.cpp; sourceTree = ""; }; - 37D928410F21331F001D4494 /* simpson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = simpson.h; sourceTree = ""; }; - 37D928420F21331F001D4494 /* singlelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = singlelinkage.cpp; sourceTree = ""; }; - 37D928430F21331F001D4494 /* sobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sobs.h; sourceTree = ""; }; - 37D928440F21331F001D4494 /* sparsematrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sparsematrix.cpp; sourceTree = ""; }; - 37D928450F21331F001D4494 /* sparsematrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sparsematrix.hpp; sourceTree = ""; }; - 37D928460F21331F001D4494 /* summarycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarycommand.cpp; sourceTree = ""; }; - 37D928470F21331F001D4494 /* summarycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarycommand.h; sourceTree = ""; }; - 37D928480F21331F001D4494 /* summarydata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydata.h; sourceTree = ""; }; - 37D928490F21331F001D4494 /* summarydisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydisplay.h; sourceTree = ""; }; - 37D9284A0F21331F001D4494 /* summarysharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarysharedcommand.cpp; sourceTree = ""; }; - 37D9284B0F21331F001D4494 /* summarysharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarysharedcommand.h; sourceTree = ""; }; - 37D9284C0F21331F001D4494 /* utilities.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = utilities.hpp; sourceTree = ""; }; - 37D9284D0F21331F001D4494 /* uvest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uvest.cpp; sourceTree = ""; }; - 37D9284E0F21331F001D4494 /* uvest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uvest.h; sourceTree = ""; }; - 37D9284F0F21331F001D4494 /* validcalculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcalculator.cpp; sourceTree = ""; }; - 37D928500F21331F001D4494 /* validcalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcalculator.h; sourceTree = ""; }; - 37D928510F21331F001D4494 /* validcommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcommands.cpp; sourceTree = ""; }; - 37D928520F21331F001D4494 /* validcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcommands.h; sourceTree = ""; }; - 37D928530F21331F001D4494 /* validparameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validparameter.cpp; sourceTree = ""; }; - 37D928540F21331F001D4494 /* validparameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validparameter.h; sourceTree = ""; }; - 37E5F3E10F29FD4200F8D827 /* treenode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treenode.h; sourceTree = ""; }; - 37E5F3E20F29FD4200F8D827 /* treenode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treenode.cpp; sourceTree = ""; }; - 37E5F4900F2A3DA800F8D827 /* readtreecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtreecommand.h; sourceTree = ""; }; - 37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtreecommand.cpp; sourceTree = ""; }; + 372E126E0F26365B0095CF7E /* readotucommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readotucommand.h; sourceTree = SOURCE_ROOT; }; + 372E126F0F26365B0095CF7E /* readotucommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readotucommand.cpp; sourceTree = SOURCE_ROOT; }; + 372E12940F263D5A0095CF7E /* readdistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readdistcommand.h; sourceTree = SOURCE_ROOT; }; + 372E12950F263D5A0095CF7E /* readdistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readdistcommand.cpp; sourceTree = SOURCE_ROOT; }; + 372E12EC0F264D320095CF7E /* commandfactory.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandfactory.cpp; sourceTree = SOURCE_ROOT; }; + 379293C10F2DE73400B9034A /* treemap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treemap.h; sourceTree = SOURCE_ROOT; }; + 379293C20F2DE73400B9034A /* treemap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treemap.cpp; sourceTree = SOURCE_ROOT; }; + 37AD4CE20F28AEA300AA2D49 /* sharedlistvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedlistvector.h; sourceTree = SOURCE_ROOT; }; + 37AD4CE30F28AEA300AA2D49 /* sharedlistvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedlistvector.cpp; sourceTree = SOURCE_ROOT; }; + 37AD4DB90F28E2FE00AA2D49 /* tree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = tree.h; sourceTree = SOURCE_ROOT; }; + 37AD4DBA0F28E2FE00AA2D49 /* tree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = tree.cpp; sourceTree = SOURCE_ROOT; }; + 37AD4DC80F28F3DD00AA2D49 /* readtree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtree.h; sourceTree = SOURCE_ROOT; }; + 37AD4DC90F28F3DD00AA2D49 /* readtree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtree.cpp; sourceTree = SOURCE_ROOT; }; + 37B28F660F27590100808A62 /* deconvolutecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = deconvolutecommand.h; sourceTree = SOURCE_ROOT; }; + 37B28F670F27590100808A62 /* deconvolutecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = deconvolutecommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927B80F21331F001D4494 /* ace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ace.cpp; sourceTree = SOURCE_ROOT; }; + 37D927B90F21331F001D4494 /* ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ace.h; sourceTree = SOURCE_ROOT; }; + 37D927BA0F21331F001D4494 /* averagelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = averagelinkage.cpp; sourceTree = SOURCE_ROOT; }; + 37D927BB0F21331F001D4494 /* bootstrap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = bootstrap.cpp; sourceTree = SOURCE_ROOT; }; + 37D927BC0F21331F001D4494 /* bootstrap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = bootstrap.h; sourceTree = SOURCE_ROOT; }; + 37D927BD0F21331F001D4494 /* calculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = calculator.cpp; sourceTree = SOURCE_ROOT; }; + 37D927BE0F21331F001D4494 /* calculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = calculator.h; sourceTree = SOURCE_ROOT; }; + 37D927BF0F21331F001D4494 /* chao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = chao1.cpp; sourceTree = SOURCE_ROOT; }; + 37D927C00F21331F001D4494 /* chao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = chao1.h; sourceTree = SOURCE_ROOT; }; + 37D927C10F21331F001D4494 /* cluster.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = cluster.cpp; sourceTree = SOURCE_ROOT; }; + 37D927C20F21331F001D4494 /* cluster.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = cluster.hpp; sourceTree = SOURCE_ROOT; }; + 37D927C30F21331F001D4494 /* clustercommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = clustercommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927C40F21331F001D4494 /* clustercommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = clustercommand.h; sourceTree = SOURCE_ROOT; }; + 37D927C50F21331F001D4494 /* collect.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collect.cpp; sourceTree = SOURCE_ROOT; }; + 37D927C60F21331F001D4494 /* collect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collect.h; sourceTree = SOURCE_ROOT; }; + 37D927C70F21331F001D4494 /* collectcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927C80F21331F001D4494 /* collectcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectcommand.h; sourceTree = SOURCE_ROOT; }; + 37D927C90F21331F001D4494 /* collectdisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectdisplay.h; sourceTree = SOURCE_ROOT; }; + 37D927CA0F21331F001D4494 /* collectorscurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectorscurvedata.h; sourceTree = SOURCE_ROOT; }; + 37D927CB0F21331F001D4494 /* collectsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = collectsharedcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927CC0F21331F001D4494 /* collectsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = collectsharedcommand.h; sourceTree = SOURCE_ROOT; }; + 37D927CD0F21331F001D4494 /* command.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = command.hpp; sourceTree = SOURCE_ROOT; }; + 37D927CF0F21331F001D4494 /* commandfactory.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandfactory.hpp; sourceTree = SOURCE_ROOT; }; + 37D927D00F21331F001D4494 /* commandoptionparser.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = commandoptionparser.cpp; sourceTree = SOURCE_ROOT; }; + 37D927D10F21331F001D4494 /* commandoptionparser.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = commandoptionparser.hpp; sourceTree = SOURCE_ROOT; }; + 37D927D20F21331F001D4494 /* completelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = completelinkage.cpp; sourceTree = SOURCE_ROOT; }; + 37D927D30F21331F001D4494 /* database.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = database.cpp; sourceTree = SOURCE_ROOT; }; + 37D927D40F21331F001D4494 /* database.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = database.hpp; sourceTree = SOURCE_ROOT; }; + 37D927D50F21331F001D4494 /* datavector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = datavector.hpp; sourceTree = SOURCE_ROOT; }; + 37D927D60F21331F001D4494 /* display.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = display.h; sourceTree = SOURCE_ROOT; }; + 37D927D70F21331F001D4494 /* engine.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = engine.cpp; sourceTree = SOURCE_ROOT; }; + 37D927D80F21331F001D4494 /* engine.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = engine.hpp; sourceTree = SOURCE_ROOT; }; + 37D927D90F21331F001D4494 /* errorchecking.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = errorchecking.cpp; sourceTree = SOURCE_ROOT; }; + 37D927DA0F21331F001D4494 /* errorchecking.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = errorchecking.h; sourceTree = SOURCE_ROOT; }; + 37D927DB0F21331F001D4494 /* fastamap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fastamap.cpp; sourceTree = SOURCE_ROOT; }; + 37D927DC0F21331F001D4494 /* fastamap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fastamap.h; sourceTree = SOURCE_ROOT; }; + 37D927DD0F21331F001D4494 /* fileoutput.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = fileoutput.cpp; sourceTree = SOURCE_ROOT; }; + 37D927DE0F21331F001D4494 /* fileoutput.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileoutput.h; sourceTree = SOURCE_ROOT; }; + 37D927DF0F21331F001D4494 /* globaldata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = globaldata.cpp; sourceTree = SOURCE_ROOT; }; + 37D927E00F21331F001D4494 /* globaldata.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = globaldata.hpp; sourceTree = SOURCE_ROOT; }; + 37D927E10F21331F001D4494 /* groupmap.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = groupmap.cpp; sourceTree = SOURCE_ROOT; }; + 37D927E20F21331F001D4494 /* groupmap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = groupmap.h; sourceTree = SOURCE_ROOT; }; + 37D927E30F21331F001D4494 /* helpcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = helpcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927E40F21331F001D4494 /* helpcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = helpcommand.h; sourceTree = SOURCE_ROOT; }; + 37D927E50F21331F001D4494 /* inputdata.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = inputdata.cpp; sourceTree = SOURCE_ROOT; }; + 37D927E60F21331F001D4494 /* inputdata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = inputdata.h; sourceTree = SOURCE_ROOT; }; + 37D927E70F21331F001D4494 /* jackknife.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = jackknife.cpp; sourceTree = SOURCE_ROOT; }; + 37D927E80F21331F001D4494 /* jackknife.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jackknife.h; sourceTree = SOURCE_ROOT; }; + 37D927E90F21331F001D4494 /* kmer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmer.cpp; sourceTree = SOURCE_ROOT; }; + 37D927EA0F21331F001D4494 /* kmer.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmer.hpp; sourceTree = SOURCE_ROOT; }; + 37D927EB0F21331F001D4494 /* kmerdb.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = kmerdb.cpp; sourceTree = SOURCE_ROOT; }; + 37D927EC0F21331F001D4494 /* kmerdb.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = kmerdb.hpp; sourceTree = SOURCE_ROOT; }; + 37D927ED0F21331F001D4494 /* listvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = listvector.cpp; sourceTree = SOURCE_ROOT; }; + 37D927EE0F21331F001D4494 /* listvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = listvector.hpp; sourceTree = SOURCE_ROOT; }; + 37D927EF0F21331F001D4494 /* mothur.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mothur.cpp; sourceTree = SOURCE_ROOT; }; + 37D927F00F21331F001D4494 /* nameassignment.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nameassignment.cpp; sourceTree = SOURCE_ROOT; }; + 37D927F10F21331F001D4494 /* nameassignment.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = nameassignment.hpp; sourceTree = SOURCE_ROOT; }; + 37D927F20F21331F001D4494 /* nocommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = nocommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927F30F21331F001D4494 /* nocommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = nocommand.h; sourceTree = SOURCE_ROOT; }; + 37D927F40F21331F001D4494 /* npshannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = npshannon.cpp; sourceTree = SOURCE_ROOT; }; + 37D927F50F21331F001D4494 /* npshannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = npshannon.h; sourceTree = SOURCE_ROOT; }; + 37D927F60F21331F001D4494 /* observable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = observable.h; sourceTree = SOURCE_ROOT; }; + 37D927F70F21331F001D4494 /* ordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ordervector.cpp; sourceTree = SOURCE_ROOT; }; + 37D927F80F21331F001D4494 /* ordervector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = ordervector.hpp; sourceTree = SOURCE_ROOT; }; + 37D927F90F21331F001D4494 /* parselistcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = parselistcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927FA0F21331F001D4494 /* parselistcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = parselistcommand.h; sourceTree = SOURCE_ROOT; }; + 37D927FB0F21331F001D4494 /* progress.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = progress.cpp; sourceTree = SOURCE_ROOT; }; + 37D927FC0F21331F001D4494 /* progress.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = progress.hpp; sourceTree = SOURCE_ROOT; }; + 37D927FD0F21331F001D4494 /* quitcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = quitcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D927FE0F21331F001D4494 /* quitcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = quitcommand.h; sourceTree = SOURCE_ROOT; }; + 37D927FF0F21331F001D4494 /* rabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rabundvector.cpp; sourceTree = SOURCE_ROOT; }; + 37D928000F21331F001D4494 /* rabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = rabundvector.hpp; sourceTree = SOURCE_ROOT; }; + 37D928010F21331F001D4494 /* rarecalc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarecalc.cpp; sourceTree = SOURCE_ROOT; }; + 37D928020F21331F001D4494 /* rarecalc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarecalc.h; sourceTree = SOURCE_ROOT; }; + 37D928030F21331F001D4494 /* raredisplay.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = raredisplay.cpp; sourceTree = SOURCE_ROOT; }; + 37D928040F21331F001D4494 /* raredisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = raredisplay.h; sourceTree = SOURCE_ROOT; }; + 37D928050F21331F001D4494 /* rarefact.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefact.cpp; sourceTree = SOURCE_ROOT; }; + 37D928060F21331F001D4494 /* rarefact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefact.h; sourceTree = SOURCE_ROOT; }; + 37D928070F21331F001D4494 /* rarefactcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D928080F21331F001D4494 /* rarefactcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactcommand.h; sourceTree = SOURCE_ROOT; }; + 37D928090F21331F001D4494 /* rarefactioncurvedata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactioncurvedata.h; sourceTree = SOURCE_ROOT; }; + 37D9280A0F21331F001D4494 /* rarefactsharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = rarefactsharedcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D9280B0F21331F001D4494 /* rarefactsharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rarefactsharedcommand.h; sourceTree = SOURCE_ROOT; }; + 37D928120F21331F001D4494 /* readmatrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readmatrix.cpp; sourceTree = SOURCE_ROOT; }; + 37D928130F21331F001D4494 /* readmatrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = readmatrix.hpp; sourceTree = SOURCE_ROOT; }; + 37D9281A0F21331F001D4494 /* sabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sabundvector.cpp; sourceTree = SOURCE_ROOT; }; + 37D9281B0F21331F001D4494 /* sabundvector.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sabundvector.hpp; sourceTree = SOURCE_ROOT; }; + 37D9281C0F21331F001D4494 /* sequence.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sequence.cpp; sourceTree = SOURCE_ROOT; }; + 37D9281D0F21331F001D4494 /* sequence.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sequence.hpp; sourceTree = SOURCE_ROOT; }; + 37D9281E0F21331F001D4494 /* shannon.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shannon.cpp; sourceTree = SOURCE_ROOT; }; + 37D9281F0F21331F001D4494 /* shannon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shannon.h; sourceTree = SOURCE_ROOT; }; + 37D928200F21331F001D4494 /* shared.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = shared.cpp; sourceTree = SOURCE_ROOT; }; + 37D928210F21331F001D4494 /* shared.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = shared.h; sourceTree = SOURCE_ROOT; }; + 37D928220F21331F001D4494 /* sharedace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedace.cpp; sourceTree = SOURCE_ROOT; }; + 37D928230F21331F001D4494 /* sharedace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedace.h; sourceTree = SOURCE_ROOT; }; + 37D928240F21331F001D4494 /* sharedchao1.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedchao1.cpp; sourceTree = SOURCE_ROOT; }; + 37D928250F21331F001D4494 /* sharedchao1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedchao1.h; sourceTree = SOURCE_ROOT; }; + 37D928260F21331F001D4494 /* sharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D928270F21331F001D4494 /* sharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedcommand.h; sourceTree = SOURCE_ROOT; }; + 37D928280F21331F001D4494 /* sharedjabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjabund.cpp; sourceTree = SOURCE_ROOT; }; + 37D928290F21331F001D4494 /* sharedjabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjabund.h; sourceTree = SOURCE_ROOT; }; + 37D9282A0F21331F001D4494 /* sharedjclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjclass.cpp; sourceTree = SOURCE_ROOT; }; + 37D9282B0F21331F001D4494 /* sharedjclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjclass.h; sourceTree = SOURCE_ROOT; }; + 37D9282C0F21331F001D4494 /* sharedjest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedjest.cpp; sourceTree = SOURCE_ROOT; }; + 37D9282D0F21331F001D4494 /* sharedjest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedjest.h; sourceTree = SOURCE_ROOT; }; + 37D9282E0F21331F001D4494 /* sharedordervector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedordervector.cpp; sourceTree = SOURCE_ROOT; }; + 37D9282F0F21331F001D4494 /* sharedordervector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedordervector.h; sourceTree = SOURCE_ROOT; }; + 37D928300F21331F001D4494 /* sharedrabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedrabundvector.cpp; sourceTree = SOURCE_ROOT; }; + 37D928310F21331F001D4494 /* sharedrabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedrabundvector.h; sourceTree = SOURCE_ROOT; }; + 37D928320F21331F001D4494 /* sharedsabundvector.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsabundvector.cpp; sourceTree = SOURCE_ROOT; }; + 37D928330F21331F001D4494 /* sharedsabundvector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsabundvector.h; sourceTree = SOURCE_ROOT; }; + 37D928340F21331F001D4494 /* sharedsobs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsobs.cpp; sourceTree = SOURCE_ROOT; }; + 37D928350F21331F001D4494 /* sharedsobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsobs.h; sourceTree = SOURCE_ROOT; }; + 37D928360F21331F001D4494 /* sharedsorabund.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorabund.cpp; sourceTree = SOURCE_ROOT; }; + 37D928370F21331F001D4494 /* sharedsorabund.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorabund.h; sourceTree = SOURCE_ROOT; }; + 37D928380F21331F001D4494 /* sharedsorclass.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorclass.cpp; sourceTree = SOURCE_ROOT; }; + 37D928390F21331F001D4494 /* sharedsorclass.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorclass.h; sourceTree = SOURCE_ROOT; }; + 37D9283A0F21331F001D4494 /* sharedsorest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedsorest.cpp; sourceTree = SOURCE_ROOT; }; + 37D9283B0F21331F001D4494 /* sharedsorest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedsorest.h; sourceTree = SOURCE_ROOT; }; + 37D9283C0F21331F001D4494 /* sharedthetan.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetan.cpp; sourceTree = SOURCE_ROOT; }; + 37D9283D0F21331F001D4494 /* sharedthetan.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetan.h; sourceTree = SOURCE_ROOT; }; + 37D9283E0F21331F001D4494 /* sharedthetayc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sharedthetayc.cpp; sourceTree = SOURCE_ROOT; }; + 37D9283F0F21331F001D4494 /* sharedthetayc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sharedthetayc.h; sourceTree = SOURCE_ROOT; }; + 37D928400F21331F001D4494 /* simpson.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = simpson.cpp; sourceTree = SOURCE_ROOT; }; + 37D928410F21331F001D4494 /* simpson.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = simpson.h; sourceTree = SOURCE_ROOT; }; + 37D928420F21331F001D4494 /* singlelinkage.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = singlelinkage.cpp; sourceTree = SOURCE_ROOT; }; + 37D928430F21331F001D4494 /* sobs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sobs.h; sourceTree = SOURCE_ROOT; }; + 37D928440F21331F001D4494 /* sparsematrix.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = sparsematrix.cpp; sourceTree = SOURCE_ROOT; }; + 37D928450F21331F001D4494 /* sparsematrix.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = sparsematrix.hpp; sourceTree = SOURCE_ROOT; }; + 37D928460F21331F001D4494 /* summarycommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarycommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D928470F21331F001D4494 /* summarycommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarycommand.h; sourceTree = SOURCE_ROOT; }; + 37D928480F21331F001D4494 /* summarydata.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydata.h; sourceTree = SOURCE_ROOT; }; + 37D928490F21331F001D4494 /* summarydisplay.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarydisplay.h; sourceTree = SOURCE_ROOT; }; + 37D9284A0F21331F001D4494 /* summarysharedcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = summarysharedcommand.cpp; sourceTree = SOURCE_ROOT; }; + 37D9284B0F21331F001D4494 /* summarysharedcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = summarysharedcommand.h; sourceTree = SOURCE_ROOT; }; + 37D9284C0F21331F001D4494 /* utilities.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = utilities.hpp; sourceTree = SOURCE_ROOT; }; + 37D9284D0F21331F001D4494 /* uvest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = uvest.cpp; sourceTree = SOURCE_ROOT; }; + 37D9284E0F21331F001D4494 /* uvest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = uvest.h; sourceTree = SOURCE_ROOT; }; + 37D9284F0F21331F001D4494 /* validcalculator.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcalculator.cpp; sourceTree = SOURCE_ROOT; }; + 37D928500F21331F001D4494 /* validcalculator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcalculator.h; sourceTree = SOURCE_ROOT; }; + 37D928510F21331F001D4494 /* validcommands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validcommands.cpp; sourceTree = SOURCE_ROOT; }; + 37D928520F21331F001D4494 /* validcommands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validcommands.h; sourceTree = SOURCE_ROOT; }; + 37D928530F21331F001D4494 /* validparameter.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = validparameter.cpp; sourceTree = SOURCE_ROOT; }; + 37D928540F21331F001D4494 /* validparameter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = validparameter.h; sourceTree = SOURCE_ROOT; }; + 37E5F3E10F29FD4200F8D827 /* treenode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = treenode.h; sourceTree = SOURCE_ROOT; }; + 37E5F3E20F29FD4200F8D827 /* treenode.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = treenode.cpp; sourceTree = SOURCE_ROOT; }; + 37E5F4900F2A3DA800F8D827 /* readtreecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = readtreecommand.h; sourceTree = SOURCE_ROOT; }; + 37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = readtreecommand.cpp; sourceTree = SOURCE_ROOT; }; + 7E44EBD00F32358B00B0D45D /* makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = makefile; sourceTree = ""; }; 8DD76F6C0486A84900D96B5E /* mothur */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = mothur; sourceTree = BUILT_PRODUCTS_DIR; }; C6859E8B029090EE04C91782 /* Mothur.1 */ = {isa = PBXFileReference; lastKnownFileType = text.man; path = Mothur.1; sourceTree = ""; }; + EBA52D2A0F378B0F00122C15 /* getgroupcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getgroupcommand.h; sourceTree = ""; }; + EBA52D2B0F378B0F00122C15 /* getgroupcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getgroupcommand.cpp; sourceTree = ""; }; + EBFD67820F33876C00883537 /* getlabelcommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlabelcommand.h; sourceTree = ""; }; + EBFD67830F33876C00883537 /* getlabelcommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlabelcommand.cpp; sourceTree = ""; }; + EBFD67E60F339AAA00883537 /* getlinecommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = getlinecommand.h; sourceTree = ""; }; + EBFD67E70F339AAA00883537 /* getlinecommand.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = getlinecommand.cpp; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -338,6 +324,7 @@ 37D927D60F21331F001D4494 /* display.h */, 37D927D80F21331F001D4494 /* engine.hpp */, 37D927D70F21331F001D4494 /* engine.cpp */, + 7E44EBD00F32358B00B0D45D /* makefile */, 37D928B10F213472001D4494 /* errorcheckor */, 37D927DE0F21331F001D4494 /* fileoutput.h */, 37D927DD0F21331F001D4494 /* fileoutput.cpp */, @@ -376,7 +363,7 @@ 37D9284C0F21331F001D4494 /* utilities.hpp */, ); name = Source; - sourceTree = ""; + sourceTree = SOURCE_ROOT; }; 1AB674ADFE9D54B511CA2CBB /* Products */ = { isa = PBXGroup; @@ -390,7 +377,6 @@ isa = PBXGroup; children = ( 37D927BE0F21331F001D4494 /* calculator.h */, - 3792948D0F2E271100B9034A /* treecalculator.h */, 37D927BD0F21331F001D4494 /* calculator.cpp */, 37D927B90F21331F001D4494 /* ace.h */, 37D927B80F21331F001D4494 /* ace.cpp */, @@ -402,8 +388,6 @@ 37D927E70F21331F001D4494 /* jackknife.cpp */, 37D927F50F21331F001D4494 /* npshannon.h */, 37D927F40F21331F001D4494 /* npshannon.cpp */, - 379294880F2E258500B9034A /* parsimony.h */, - 379294890F2E258500B9034A /* parsimony.cpp */, 37D928020F21331F001D4494 /* rarecalc.h */, 37D928010F21331F001D4494 /* rarecalc.cpp */, 37D9281F0F21331F001D4494 /* shannon.h */, @@ -420,8 +404,6 @@ 37D9282C0F21331F001D4494 /* sharedjest.cpp */, 37D928350F21331F001D4494 /* sharedsobs.h */, 37D928340F21331F001D4494 /* sharedsobs.cpp */, - 37AFC71D0F445386005F492D /* sharedsobscollectsummary.h */, - 37AFC71E0F445386005F492D /* sharedsobscollectsummary.cpp */, 37D928370F21331F001D4494 /* sharedsorabund.h */, 37D928360F21331F001D4494 /* sharedsorabund.cpp */, 37D928390F21331F001D4494 /* sharedsorclass.h */, @@ -435,15 +417,11 @@ 37D928410F21331F001D4494 /* simpson.h */, 37D928400F21331F001D4494 /* simpson.cpp */, 37D928430F21331F001D4494 /* sobs.h */, - 374610810F40652400460C57 /* unweighted.h */, - 374610820F40652400460C57 /* unweighted.cpp */, 37D9284E0F21331F001D4494 /* uvest.h */, 37D9284D0F21331F001D4494 /* uvest.cpp */, - 3746107C0F4064D100460C57 /* weighted.h */, - 3746107D0F4064D100460C57 /* weighted.cpp */, ); name = calculators; - sourceTree = ""; + sourceTree = SOURCE_ROOT; }; 37D928A90F2133E5001D4494 /* commands */ = { isa = PBXGroup; @@ -457,16 +435,18 @@ 37D927CB0F21331F001D4494 /* collectsharedcommand.cpp */, 37B28F660F27590100808A62 /* deconvolutecommand.h */, 37B28F670F27590100808A62 /* deconvolutecommand.cpp */, + EBA52D2A0F378B0F00122C15 /* getgroupcommand.h */, + EBA52D2B0F378B0F00122C15 /* getgroupcommand.cpp */, + EBFD67820F33876C00883537 /* getlabelcommand.h */, + EBFD67830F33876C00883537 /* getlabelcommand.cpp */, + EBFD67E60F339AAA00883537 /* getlinecommand.h */, + EBFD67E70F339AAA00883537 /* getlinecommand.cpp */, 37D927E40F21331F001D4494 /* helpcommand.h */, 37D927E30F21331F001D4494 /* helpcommand.cpp */, 37D927F20F21331F001D4494 /* nocommand.cpp */, 37D927F30F21331F001D4494 /* nocommand.h */, 37D927FA0F21331F001D4494 /* parselistcommand.h */, 37D927F90F21331F001D4494 /* parselistcommand.cpp */, - 3792946E0F2E191800B9034A /* parsimonycommand.h */, - 3792946F0F2E191800B9034A /* parsimonycommand.cpp */, - 37D927FE0F21331F001D4494 /* quitcommand.h */, - 37D927FD0F21331F001D4494 /* quitcommand.cpp */, 37D928080F21331F001D4494 /* rarefactcommand.h */, 37D928070F21331F001D4494 /* rarefactcommand.cpp */, 37D9280B0F21331F001D4494 /* rarefactsharedcommand.h */, @@ -475,8 +455,6 @@ 372E12950F263D5A0095CF7E /* readdistcommand.cpp */, 372E126E0F26365B0095CF7E /* readotucommand.h */, 372E126F0F26365B0095CF7E /* readotucommand.cpp */, - 37AFC7A10F44703E005F492D /* readsharedcommand.h */, - 37AFC7A20F44703E005F492D /* readsharedcommand.cpp */, 37E5F4900F2A3DA800F8D827 /* readtreecommand.h */, 37E5F4910F2A3DA800F8D827 /* readtreecommand.cpp */, 37D928270F21331F001D4494 /* sharedcommand.h */, @@ -485,13 +463,11 @@ 37D928460F21331F001D4494 /* summarycommand.cpp */, 37D9284B0F21331F001D4494 /* summarysharedcommand.h */, 37D9284A0F21331F001D4494 /* summarysharedcommand.cpp */, - 3746109B0F40657600460C57 /* unifracunweightedcommand.h */, - 3746109C0F40657600460C57 /* unifracunweightedcommand.cpp */, - 374610760F40645300460C57 /* unifracweightedcommand.h */, - 374610770F40645300460C57 /* unifracweightedcommand.cpp */, + 37D927FE0F21331F001D4494 /* quitcommand.h */, + 37D927FD0F21331F001D4494 /* quitcommand.cpp */, ); name = commands; - sourceTree = ""; + sourceTree = SOURCE_ROOT; }; 37D928AC0F213420001D4494 /* containers */ = { isa = PBXGroup; @@ -525,7 +501,7 @@ 37E5F3E20F29FD4200F8D827 /* treenode.cpp */, ); name = containers; - sourceTree = ""; + sourceTree = SOURCE_ROOT; }; 37D928B10F213472001D4494 /* errorcheckor */ = { isa = PBXGroup; @@ -540,7 +516,7 @@ 37D928530F21331F001D4494 /* validparameter.cpp */, ); name = errorcheckor; - sourceTree = ""; + sourceTree = SOURCE_ROOT; }; C6859E8C029090F304C91782 /* Documentation */ = { isa = PBXGroup; @@ -671,14 +647,10 @@ 37E5F3E30F29FD4200F8D827 /* treenode.cpp in Sources */, 37E5F4920F2A3DA800F8D827 /* readtreecommand.cpp in Sources */, 379293C30F2DE73400B9034A /* treemap.cpp in Sources */, - 379294700F2E191800B9034A /* parsimonycommand.cpp in Sources */, - 3792948A0F2E258500B9034A /* parsimony.cpp in Sources */, - 374610780F40645300460C57 /* unifracweightedcommand.cpp in Sources */, - 3746107E0F4064D100460C57 /* weighted.cpp in Sources */, - 374610830F40652400460C57 /* unweighted.cpp in Sources */, - 3746109D0F40657600460C57 /* unifracunweightedcommand.cpp in Sources */, - 37AFC71F0F445386005F492D /* sharedsobscollectsummary.cpp in Sources */, - 37AFC7A30F44703E005F492D /* readsharedcommand.cpp in Sources */, + 7E44EBD10F3235D900B0D45D /* makefile in Sources */, + EBFD67840F33876C00883537 /* getlabelcommand.cpp in Sources */, + EBFD67E80F339AAA00883537 /* getlinecommand.cpp in Sources */, + EBA52D2C0F378B0F00122C15 /* getgroupcommand.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -692,7 +664,7 @@ GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 3; + GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "_GLIBCXX_DEBUG=1", "_GLIBCXX_DEBUG_PEDANTIC=1", @@ -708,7 +680,6 @@ buildSettings = { DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 3; INSTALL_PATH = /usr/local/bin; PRODUCT_NAME = mothur; }; @@ -732,7 +703,7 @@ ppc, i386, ); - GCC_OPTIMIZATION_LEVEL = 0; + GCC_OPTIMIZATION_LEVEL = 3; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNUSED_VARIABLE = YES; PREBINDING = NO; diff --git a/ace.cpp b/ace.cpp index 0647794..d074310 100644 --- a/ace.cpp +++ b/ace.cpp @@ -13,6 +13,7 @@ EstOutput Ace::getValues(SAbundVector* rank) { try { + cout << "abund = " << abund << "\n"; data.resize(3,0); // vector aceData(3,0); double ace, acelci, acehci; diff --git a/ace.h b/ace.h index 4c4a69d..b81dd64 100644 --- a/ace.h +++ b/ace.h @@ -20,7 +20,7 @@ It is a child of the calculator class. */ class Ace : public Calculator { public: - Ace(int n=10) : abund(n), Calculator("ACE", 3) {}; + Ace(int n) : abund(n), Calculator("ACE", 3) {}; EstOutput getValues(SAbundVector*); EstOutput getValues(SharedRAbundVector*, SharedRAbundVector*) {return data;}; private: diff --git a/collect.cpp b/collect.cpp index 2ed5ca7..1c8128a 100644 --- a/collect.cpp +++ b/collect.cpp @@ -64,7 +64,8 @@ void Collect::getSharedCurve(int increment = 1){ try { globaldata = GlobalData::getInstance(); vector lookup; - + vector chosenGroups = globaldata->sharedGroups; + //create and initialize vector of sharedvectors, one for each group for (int i = 0; i < globaldata->gGroupmap->getNumGroups(); i++) { SharedRAbundVector* temp = new SharedRAbundVector(sharedorder->getNumBins()); @@ -78,7 +79,7 @@ try { //initialize labels for output //makes 'uniqueAB uniqueAC uniqueBC' if your groups are A, B, C - getGroupComb(); + getGroupComb(chosenGroups); groupLabel = ""; for (int s = 0; s < groupComb.size(); s++) { groupLabel = groupLabel + label + groupComb[s] + "\t"; @@ -94,7 +95,6 @@ try { //get first sample individual chosen = sharedorder->get(i); int abundance; - //set info for sharedvector in chosens group for (int j = 0; j < lookup.size(); j++) { if (chosen.group == lookup[j]->getGroup()) { @@ -103,7 +103,7 @@ try { break; } } - + //calculate at 0 and the given increment if((i == 0) || (i+1) % increment == 0){ //randomize group order @@ -116,8 +116,8 @@ try { } n++; } - } totalNumSeq = i+1; + } } //calculate last line if you haven't already @@ -150,7 +150,7 @@ try { /**************************************************************************************/ -void Collect::getGroupComb() { +void Collect::getGroupComb(vector chosen) { string group; numGroupComb = 0; @@ -158,13 +158,28 @@ void Collect::getGroupComb() { int n = 1; for (int i = 0; i < (globaldata->gGroupmap->getNumGroups() - 1); i++) { for (int l = n; l < globaldata->gGroupmap->getNumGroups(); l++) { - group = globaldata->gGroupmap->namesOfGroups[i] + globaldata->gGroupmap->namesOfGroups[l]; - groupComb.push_back(group); - numGroupComb++; + string g1 = globaldata->gGroupmap->namesOfGroups[i]; + string g2 = globaldata->gGroupmap->namesOfGroups[l]; + if(validGroup(chosen, g1) && validGroup(chosen, g2)) { + group = g1 + g2; + groupComb.push_back(group); + numGroupComb++; + } } n++; } - } /**************************************************************************************/ + +bool Collect::validGroup(vector chosen, string group) { + if(chosen.size() == 0) + return true; + for(int i = 0; i < chosen.size(); i++) + if(chosen.at(i).compare(group) == 0) + return true; + return false; +} + + + diff --git a/collect.h b/collect.h index fe78dda..3f6a094 100644 --- a/collect.h +++ b/collect.h @@ -34,8 +34,9 @@ private: vector displays; int numSeqs, numGroupComb, totalNumSeq; string label, groupLabel; - void getGroupComb(); + void getGroupComb(vector); vector groupComb; + bool validGroup(vector, string); }; diff --git a/collectcommand.cpp b/collectcommand.cpp index 0f622c4..f012ba1 100644 --- a/collectcommand.cpp +++ b/collectcommand.cpp @@ -36,6 +36,7 @@ CollectCommand::CollectCommand(){ }else if (globaldata->Estimators[i] == "chao") { cDisplays.push_back(new CollectDisplay(new Chao1(), new ThreeColumnFile(fileNameRoot+"chao"))); }else if (globaldata->Estimators[i] == "ace") { + convert(globaldata->getAbund(), abund); cDisplays.push_back(new CollectDisplay(new Ace(), new ThreeColumnFile(fileNameRoot+"ace"))); }else if (globaldata->Estimators[i] == "jack") { cDisplays.push_back(new CollectDisplay(new Jackknife(), new ThreeColumnFile(fileNameRoot+"jack"))); @@ -88,11 +89,12 @@ int CollectCommand::execute(){ order = globaldata->gorder; input = globaldata->ginput; - + set orderList; + while(order != NULL){ + orderList.insert(order->getLabel()); if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(order->getLabel()) == 1){ - cCurve = new Collect(order, cDisplays); convert(globaldata->getFreq(), freq); cCurve->getCurve(freq); @@ -101,12 +103,14 @@ int CollectCommand::execute(){ cout << order->getLabel() << '\t' << count << endl; } - order = (input->getOrderVector()); count++; - } - + set::iterator i; + for(i = globaldata->labels.begin(); i != globaldata->labels.end(); ++i) + if(orderList.count(*i) == 0) + cout << "'" << *i << "'" << " is not a valid label.\n"; + globaldata->clearLabels(); for(int i=0;i cDisplays; - int freq; + int freq, abund; }; diff --git a/collectsharedcommand.cpp b/collectsharedcommand.cpp index 217045a..b3f7981 100644 --- a/collectsharedcommand.cpp +++ b/collectsharedcommand.cpp @@ -108,9 +108,10 @@ int CollectSharedCommand::execute(){ SharedList = globaldata->gSharedList; order = SharedList->getSharedOrderVector(); } - + set orderList; + while(order != NULL){ - + orderList.insert(order->getLabel()); if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(order->getLabel()) == 1){ //create collectors curve cCurve = new Collect(order, cDisplays); @@ -137,7 +138,11 @@ int CollectSharedCommand::execute(){ count++; } - + set::iterator i; + for(i = globaldata->labels.begin(); i != globaldata->labels.end(); ++i) + if(orderList.count(*i) == 0) + cout << "'" << *i << "'" << " is not a valid label.\n"; + globaldata->clearLabels(); for(int i=0;i /*******************************************************/ @@ -36,6 +37,127 @@ void ErrorCheck::refresh() { cutoff = globaldata->getCutOff(); format = globaldata->getFormat(); method = globaldata->getMethod(); + + + string p[] = { + "phylip", //0 + "column", //1 + "list", //2 + "rabund", //3 + "sabund", //4 + "name", //5 + "order", //6 + "group", //7 + "fasta", //8 + "treefile", //9 + "cutoff", //10 + "precision", //11 + "iters", //12 + "jumble", //13 + "freq", //14 + "method", //15 + "fileroot", //16 + "line", //17 + "label", //18 + "single", //19 + "rarefaction", //20 + "shared", //21 + "summary", //22 + "sharedrarefaction", //23 + "sharedsummary", //24 + "comparegroups", //25 + "abund", //26 + }; + + string c0[] = {p[0],p[5],p[10],p[11]}; + string c1[] = {p[2],p[6],p[7]}; + string c2[] = {p[10],p[11],p[15]}; + string c3[] = {p[8]}; + string c4[] = {p[14],p[17],p[18],p[19],p[26]}; + string c5[] = {p[13],p[14],p[17],p[18],p[21],p[25]}; + string c6[] = {""}; + string c7[] = {""}; + string c8[] = {""}; + string c9[] = {p[12],p[14],p[17],p[18],p[20],p[26]}; + string c10[] = {p[12],p[13],p[17],p[18],p[23]}; + string c11[] = {p[17],p[18],p[22],p[26]}; + string c12[] = {p[13],p[17],p[18],p[24]}; + string c13[] = {""}; + + vector v0 (c0, c0+sizeof(c0)/sizeof(string)); + vector v1 (c1, c1+sizeof(c1)/sizeof(string)); + vector v2 (c2, c2+sizeof(c2)/sizeof(string)); + vector v3 (c3, c3+sizeof(c3)/sizeof(string)); + vector v4 (c4, c4+sizeof(c4)/sizeof(string)); + vector v5 (c5, c5+sizeof(c5)/sizeof(string)); + vector v6 (c6, c6+sizeof(c6)/sizeof(string)); + vector v7 (c7, c7+sizeof(c7)/sizeof(string)); + vector v8 (c8, c8+sizeof(c8)/sizeof(string)); + vector v9 (c9, c9+sizeof(c9)/sizeof(string)); + vector v10 (c10, c10+sizeof(c10)/sizeof(string)); + vector v11 (c11, c11+sizeof(c11)/sizeof(string)); + vector v12 (c12, c12+sizeof(c12)/sizeof(string)); + vector v13 (c13, c13+sizeof(c13)/sizeof(string)); + + vector > allCommands; + allCommands.push_back(v0); + allCommands.push_back(v1); + allCommands.push_back(v2); + allCommands.push_back(v3); + allCommands.push_back(v4); + allCommands.push_back(v5); + allCommands.push_back(v6); + allCommands.push_back(v7); + allCommands.push_back(v8); + allCommands.push_back(v9); + allCommands.push_back(v10); + allCommands.push_back(v11); + allCommands.push_back(v12); + allCommands.push_back(v13); + + string commands[] = { + "read.dist", //0 + "read.otu", //1 + "cluster", //2 + "deconvolute", //3 + "collect.single", //4 + "collect.shared", //5 + "get.group", //6 + "get.label", //7 + "get.line", //8 + "rarefaction.single", //9 + "rarefaction.shared", //10 + "summary.single", //11 + "summary.shared", //12 + "quit" //13 + }; + + for(int i = 0; i < allCommands.size(); i++) + commandParameters[commands[i]] = allCommands.at(i); + + //{Lowerbound(piSent if no lowerbound), Upperbound(piSent if no upperbound), 1 if only the first 2 values, 0 if greater than, 0 if less than}; + piSent = 3.14159; + double ip0[] = {10, piSent, 0, 1, 0}; + double ip1[] = {10, piSent, 0, 1, 0}; + double ip2[] = {0, 1, 1, 0, 0}; + double ip3[] = {1, piSent, 0, 0, 0}; + double ip4[] = {1, piSent, 0, 1, 0}; + double ip5[] = {5, piSent, 0, 1, 0}; + + vector ipv0 (ip0, ip0+sizeof(ip0)/sizeof(double)); + vector ipv1 (ip1, ip1+sizeof(ip1)/sizeof(double)); + vector ipv2 (ip2, ip2+sizeof(ip2)/sizeof(double)); + vector ipv3 (ip3, ip3+sizeof(ip3)/sizeof(double)); + vector ipv4 (ip4, ip4+sizeof(ip4)/sizeof(double)); + vector ipv5 (ip5, ip5+sizeof(ip5)/sizeof(double)); + + intParams[p[11]] = ipv0; + intParams[p[12]] = ipv1; + intParams[p[13]] = ipv2; + intParams[p[14]] = ipv3; + intParams[p[17]] = ipv4; + intParams[p[26]] = ipv5; + randomtree = globaldata->getRandomTree(); sharedfile = globaldata->getSharedFile(); } @@ -73,6 +195,7 @@ bool ErrorCheck::checkInput(string input) { if (validCommand->isValidCommand(commandName) != true) { return false; } string parameter, value; + //reads in parameters and values if((optionText != "") && (commandName != "help")){ while((optionText.find_first_of(',') != -1) && (errorFree)) { //while there are parameters @@ -81,7 +204,48 @@ bool ErrorCheck::checkInput(string input) { //is it a valid parameter if (validParameter->isValidParameter(parameter) != true) { return false; } - + if(!validCommandParameter(parameter,commandName)) { + cout << "'" << parameter << "' is not a valid parameter for the " << commandName << " command.\n"; + return false; + } + if(!validParameterValue(value, parameter)) { + if(parameter.compare("precision") == 0) + cout << "The precision parameter can only take powers of 10 as a value (e.g. 10,1000,1000, etc.)\n"; + else { + vector bounds = intParams[parameter]; + double a = bounds.at(0); + double b = bounds.at(1); + double c = bounds.at(2); + double d = bounds.at(3); + double e = bounds.at(4); + cout << "The '" << parameter << "' parameter needs to be "; + if(c == 1) + cout << "either '" << a << "' or '" << b << "'.\n"; + else + { + if(a != piSent) + { + cout << ">"; + if(d != 0) + cout << "="; + cout << " '" << a << "'"; + } + if(b == piSent) + cout << ".\n"; + else if(a != piSent) + cout << " and "; + if(b != piSent) + { + cout << "<"; + if(e != 0) + cout << "="; + cout << " '" << b << ".\n"; + } + } + } + return false; + } + if (parameter == "phylip" ) { phylipfile = value; } if (parameter == "column" ) { columnfile = value; } if (parameter == "list" ) { listfile = value; } @@ -102,8 +266,14 @@ bool ErrorCheck::checkInput(string input) { if (parameter == "fileroot" ) { fileroot = value; } if (parameter == "line" ) { line = value; } if (parameter == "label" ) { label = value; } + if (parameter == "abund" ) { abund = value; } if (parameter == "random" ) { randomtree = value; } + if (parameter == "comparegroups") { //stores groups to be compared + sharedGroups.clear(); //clears out old values + globaldata->splitAtDash(value, sharedGroups); + } + } //gets the last parameter and value @@ -112,7 +282,47 @@ bool ErrorCheck::checkInput(string input) { splitAtEquals(parameter, value); //is it a valid parameter if (validParameter->isValidParameter(parameter) != true) { return false; } - + if(!validCommandParameter(parameter,commandName)) { + cout << "'" << parameter << "' is not a valid parameter for the " << commandName << " command.\n"; + return false; + } + if(!validParameterValue(value, parameter)) { + if(parameter.compare("precision") == 0) + cout << "The precision parameter can only take powers of 10 as a value (e.g. 10,1000,1000, etc.)\n"; + else { + vector bounds = intParams[parameter]; + double a = bounds.at(0); + double b = bounds.at(1); + double c = bounds.at(2); + double d = bounds.at(3); + double e = bounds.at(4); + cout << "The '" << parameter << "' parameter needs to be "; + if(c == 1) + cout << "either '" << a << "' or '" << b << "'.\n"; + else + { + if(a != piSent) + { + cout << ">"; + if(d != 0) + cout << "="; + cout << " '" << a << "'"; + } + if(b == piSent) + cout << ".\n"; + else if(a != piSent) + cout << " and "; + if(b != piSent) + { + cout << "<"; + if(e != 0) + cout << "="; + cout << " '" << b << ".\n"; + } + } + } + return false; + } if (parameter == "phylip" ) { phylipfile = value; } if (parameter == "column" ) { columnfile = value; } if (parameter == "list" ) { listfile = value; } @@ -134,7 +344,12 @@ bool ErrorCheck::checkInput(string input) { if (parameter == "line" ) { line = value; } if (parameter == "label" ) { label = value; } if (parameter == "random" ) { randomtree = value; } + if (parameter == "abund" ) { abund = value; } + if (parameter == "comparegroups") { //stores groups to be compared + sharedGroups.clear(); //clears out old values + globaldata->splitAtDash(value, sharedGroups); + } } } @@ -183,6 +398,12 @@ bool ErrorCheck::checkInput(string input) { } //check for valid method + if(commandName == "get.group") { + if ((globaldata->getGroupFile() == "")) { cout << "You must read a group before you can use the get.group command." << endl; return false; } + } + if (commandName == "get.label" || commandName == "get.line") { + if ((globaldata->getListFile() == "") && (globaldata->getRabundFile() == "") && (globaldata->getSabundFile() == "")) { cout << "You must read a list, sabund or rabund before you can use the get.label or get.line command." << endl; return false; } + } if (commandName == "cluster") { if ((method == "furthest") || (method == "nearest") || (method == "average")) { } else {cout << "Not a valid clustering method. Valid clustering algorithms are furthest, nearest or average." << endl; return false; } @@ -198,7 +419,9 @@ bool ErrorCheck::checkInput(string input) { else if (globaldata->getGroupFile() == "") { cout << "You must read a list and a group, or a shared before you can use the collect.shared, rarefaction.shared or summary.shared commands." << endl; return false; } } } - + + globaldata->clearAbund(); + return errorFree; } @@ -276,6 +499,113 @@ void ErrorCheck::validateReadFiles() { } /*******************************************************/ +/******************************************************/ +//This function checks to see if the given paramter +//is a valid paramter for the given command. +bool ErrorCheck::validCommandParameter(string parameter, string commandName) { + try { + for(int i = 0; i < commandParameters[commandName].size(); i++) + if(parameter.compare(commandParameters[commandName][i]) == 0) + return true; + return false; + } + + catch(exception& e) { + cout << "Standard Error: " << e.what() << " has occurred in the ErrorCheck class Function validateReadFiles. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + exit(1); + } + catch(...) { + cout << "An unknown error has occurred in the ErrorCheck class function validateReadFiles. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + exit(1); + } +} +/*******************************************************/ + +/******************************************************/ +//This function checks to see if the given paramter value +//is convertable into an int if that parameter requires it. +bool ErrorCheck::validParameterValue(string value, string parameter) { + try { + int pVal; + if(intParams.count(parameter) == 1) + { + vector bounds = intParams[parameter]; + bool valid = convertTest(value, pVal); + if(!valid) + return false; + if(parameter.compare("precision") == 0) + { + double logNum = log10((double)pVal); + double diff = (double)((int)logNum - logNum); + if(diff != 0) + return false; + } + double a = bounds.at(0); + double b = bounds.at(1); + double c = bounds.at(2); + double d = bounds.at(3); + double e = bounds.at(4); + bool a0 = pVal > a; + bool a1 = pVal >= a; + bool b0 = pVal < b; + bool b1 = pVal <= b; + + if(c != 1) + { + if(a == piSent && b == piSent) + return true; + if(a != piSent && b == piSent) + { + if(d == 0) + return a0; + else + return a1; + } + else if(a == piSent && b != piSent) + { + if(e == 0) + return b0; + else + return b1; + } + else + { + if(d == 0 && e == 0) + return (a0 && b0); + else if(d == 0 && e == 1) + return (a0 && b1); + else if(d == 1 && e == 0) + return (a1 && b0); + else + return (a1 && b1); + } + } + else + { + if(a == piSent && b == piSent) + return true; + if(a != piSent && b == piSent) + return (pVal == a); + else if(a == piSent && b != piSent) + return (pVal == b); + else + return (pVal == a || pVal == b); + } + } + return true; + } + + catch(exception& e) { + cout << "Standard Error: " << e.what() << " has occurred in the ErrorCheck class Function validateReadFiles. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + exit(1); + } + catch(...) { + cout << "An unknown error has occurred in the ErrorCheck class function validateReadFiles. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; + exit(1); + } +} +/*******************************************************/ + /******************************************************/ //This function checks to make sure the user entered appropriate // format parameters on a distfile read diff --git a/errorchecking.h b/errorchecking.h index 1b023e0..8b3c0ca 100644 --- a/errorchecking.h +++ b/errorchecking.h @@ -27,6 +27,8 @@ class ErrorCheck { ValidCommands* validCommand; ValidParameters* validParameter; void validateReadFiles(); + bool validCommandParameter(string, string); + bool validParameterValue(string, string); void validateReadDist(); void validateReadPhil(); void validateParseFiles(); @@ -34,9 +36,14 @@ class ErrorCheck { void clear(); void refresh(); string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, treefile, sharedfile, cutoff, format; - string precision, method, fileroot, label, line, iters, jumble, freq, single, rarefaction, shared, summary, randomtree; + string precision, method, fileroot, label, line, iters, jumble, freq, single, rarefaction, shared, summary, randomtree, abund; string commandName, optionText; bool errorFree; - + + vector sharedGroups; + map > commandParameters; + map > intParams; + double piSent; + }; #endif diff --git a/globaldata.cpp b/globaldata.cpp index eeb1f4d..66a44f2 100644 --- a/globaldata.cpp +++ b/globaldata.cpp @@ -76,7 +76,6 @@ void GlobalData::parseGlobalData(string commandString, string optionText){ gGroupmap = NULL; gTree.clear(); labels.clear(); lines.clear(); groups.clear(); - } //saves help request @@ -109,9 +108,11 @@ void GlobalData::parseGlobalData(string commandString, string optionText){ if (key == "freq" ) { freq = value; } if (key == "method" ) { method = value; } if (key == "fileroot" ) { fileroot = value; } + if (key == "abund" ) { abund = value; } if (key == "random" ) { randomtree = value; } if (key == "groups" ) { groups = value; } if (key == "calc") { calc = value; } + if (key == "line") {//stores lines to be used in a set lines.clear(); @@ -127,11 +128,13 @@ void GlobalData::parseGlobalData(string commandString, string optionText){ splitAtDash(value, labels); allLines = 0; } + if (key == "groups") {//stores groups to be used in a vector Groups.clear(); groups = value; splitAtDash(value, Groups); } + } //saves the last parameter @@ -155,6 +158,7 @@ void GlobalData::parseGlobalData(string commandString, string optionText){ if (key == "freq" ) { freq = value; } if (key == "method" ) { method = value; } if (key == "fileroot" ) { fileroot = value; } + if (key == "abund" ) { abund = value; } if (key == "random" ) { randomtree = value; } if (key == "groups" ) { groups = value; } if (key == "calc") { calc = value; } @@ -255,6 +259,7 @@ string GlobalData::getFileRoot() { return fileroot; } string GlobalData::getIters() { return iters; } string GlobalData::getJumble() { return jumble; } string GlobalData::getFreq() { return freq; } +string GlobalData::getAbund() { return abund; } string GlobalData::getRandomTree() { return randomtree; } void GlobalData::setListFile(string file) { listfile = file; inputFileName = file;} void GlobalData::setRabundFile(string file) { rabundfile = file; inputFileName = file;} @@ -302,9 +307,10 @@ void GlobalData::clear() { freq = "100"; method = "furthest"; fileroot = ""; - calc = ""; + abund = "10"; } -/*******************************************************/ + +//*******************************************************/ /******************************************************/ void GlobalData::reset() { @@ -319,6 +325,7 @@ void GlobalData::reset() { freq = "100"; method = "furthest"; calc = ""; + abund = "10"; } /*******************************************************/ @@ -330,6 +337,3 @@ GlobalData::~GlobalData() { if(gorder != NULL) { delete gorder; } } /*******************************************************/ - -/******************************************************/ - diff --git a/globaldata.hpp b/globaldata.hpp index 277d351..b36545e 100644 --- a/globaldata.hpp +++ b/globaldata.hpp @@ -41,10 +41,9 @@ public: TreeMap* gTreemap; string inputFileName, helpRequest, commandName; bool allLines; - vector Estimators; //holds estimators to be used + vector Estimators, Groups; //holds estimators to be used set lines; //hold lines to be used set labels; //holds labels to be used - vector Groups; string getPhylipFile(); string getColumnFile(); @@ -65,7 +64,9 @@ public: string getIters(); string getJumble(); string getFreq(); + string getAbund(); string getRandomTree(); + void setListFile(string); void setPhylipFile(string); void setColumnFile(string); @@ -79,11 +80,16 @@ public: void setListVector(ListVector*); void setSparseMatrix(SparseMatrix*); + void clear(); + void clearLabels(); + void clearAbund(); + void parseGlobalData(string, string); private: string phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, orderfile, fastafile, treefile, sharedfile, line, label, randomtree, groups; - string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc; + string cutoff, format, precision, method, fileroot, iters, jumble, freq, calc, abund; + static GlobalData* _uniqueInstance; GlobalData( const GlobalData& ); // Disable copy constructor void operator=( const GlobalData& ); // Disable assignment operator diff --git a/helpcommand.cpp b/helpcommand.cpp index b627c14..206df13 100644 --- a/helpcommand.cpp +++ b/helpcommand.cpp @@ -87,6 +87,25 @@ int HelpCommand::execute(){ cout << "Example collect.shared(label=unique-.01-.03, line=0,5,10, freq=10, jumble=1, calc=sharedChao-sharedAce-sharedJabund-sharedSorensonAbund-sharedJclass-sharedSorClass-sharedJest-sharedSorEst-SharedThetaYC-SharedThetaN)." << "\n"; cout << "The default values for jumble is 1 (meaning jumble, if it’s set to 0 then it will not jumble), freq is 100 and calc are sharedsobs-sharedChao-sharedAce-sharedJabund-sharedSorensonAbund-sharedJclass-sharedSorClass-sharedJest-sharedSorEst-SharedThetaYC-SharedThetaN." << "\n"; cout << "The label and line parameters are used to analyze specific lines in your input." << "\n"; + cout << "Note: No spaces between parameter labels (i.e. list), '=' and parameters (i.e.yourListfile)." << "\n" << "\n"; + }else if (globaldata->helpRequest == "get.group") { + cout << "The get.group command can only be executed after a successful read.otu command of a group file." << "\n"; + cout << "You may not use any parameters with the get.group command." << "\n"; + cout << "The get.group command should be in the following format: " << "\n"; + cout << "get.group()" << "\n"; + cout << "Example get.group()." << "\n"; + }else if (globaldata->helpRequest == "get.label") { + cout << "The get.label command can only be executed after a successful read.otu command." << "\n"; + cout << "You may not use any parameters with the get.label command." << "\n"; + cout << "The get.label command should be in the following format: " << "\n"; + cout << "get.label()" << "\n"; + cout << "Example get.label()." << "\n"; + }else if (globaldata->helpRequest == "get.line") { + cout << "The get.line command can only be executed after a successful read.otu command." << "\n"; + cout << "You may not use any parameters with the get.line command." << "\n"; + cout << "The get.line command should be in the following format: " << "\n"; + cout << "get.line()" << "\n"; + cout << "Example get.line()." << "\n"; cout << "Note: No spaces between parameter labels (i.e. freq), '=' and parameters (i.e.yourFreq)." << "\n" << "\n"; }else if (globaldata->helpRequest == "rarefaction.single") { cout << "The rarefaction.single command can only be executed after a successful read.otu WTIH ONE EXECEPTION." << "\n"; diff --git a/rarefactcommand.cpp b/rarefactcommand.cpp index 7e4ced5..df33e5d 100644 --- a/rarefactcommand.cpp +++ b/rarefactcommand.cpp @@ -35,6 +35,9 @@ RareFactCommand::RareFactCommand(){ }else if (globaldata->Estimators[i] == "chao") { rDisplays.push_back(new RareDisplay(new Chao1(), new ThreeColumnFile(fileNameRoot+"r_chao"))); }else if (globaldata->Estimators[i] == "ace") { + convert(globaldata->getAbund(), abund); + if(abund < 5) + abund = 10; rDisplays.push_back(new RareDisplay(new Ace(), new ThreeColumnFile(fileNameRoot+"r_ace"))); }else if (globaldata->Estimators[i] == "jack") { rDisplays.push_back(new RareDisplay(new Jackknife(), new ThreeColumnFile(fileNameRoot+"r_jack"))); diff --git a/rarefactcommand.h b/rarefactcommand.h index c81eb6f..058d7dd 100644 --- a/rarefactcommand.h +++ b/rarefactcommand.h @@ -52,7 +52,7 @@ private: InputData* input; ValidCalculators* validCalculator; Rarefact* rCurve; - int freq, nIters; + int freq, nIters, abund; }; #endif diff --git a/summarycommand.cpp b/summarycommand.cpp index 7a3ad4a..06cc9b0 100644 --- a/summarycommand.cpp +++ b/summarycommand.cpp @@ -32,6 +32,9 @@ SummaryCommand::SummaryCommand(){ }else if(globaldata->Estimators[i] == "chao"){ sumCalculators.push_back(new Chao1()); }else if(globaldata->Estimators[i] == "ace"){ + convert(globaldata->getAbund(), abund); + if(abund < 5) + abund = 10; sumCalculators.push_back(new Ace()); }else if(globaldata->Estimators[i] == "jack"){ sumCalculators.push_back(new Jackknife()); diff --git a/summarycommand.h b/summarycommand.h index 8e2d74b..4c5144c 100644 --- a/summarycommand.h +++ b/summarycommand.h @@ -49,5 +49,6 @@ private: SAbundVector* sabund; string outputFileName; ofstream outputFileHandle; + int abund; }; #endif diff --git a/utilities.hpp b/utilities.hpp index bf7df2d..8f5009f 100644 --- a/utilities.hpp +++ b/utilities.hpp @@ -33,6 +33,19 @@ inline void convert(const string& s, T& x, bool failIfLeftoverChars = true){ if (!(i >> x) || (failIfLeftoverChars && i.get(c))) throw BadConversion(s); } +//********************************************************************************************************************** + +template +inline bool convertTest(const string& s, T& x, bool failIfLeftoverChars = true){ + istringstream i(s); + char c; + if (!(i >> x) || (failIfLeftoverChars && i.get(c))) + { + cout << "'" << s << "' is unable to be converted into an integer.\n"; + return false; + } + return true; +} //********************************************************************************************************************** @@ -285,8 +298,12 @@ inline void splitAtComma(string& prefix, string& suffix){ try { prefix = suffix.substr(0,suffix.find_first_of(',')); if ((suffix.find_first_of(',')+2) <= suffix.length()) { //checks to make sure you don't have comma at end of string - suffix = suffix.substr(suffix.find_first_of(',')+2, suffix.length()); + suffix = suffix.substr(suffix.find_first_of(',')+1, suffix.length()); + string space = " "; + while(suffix.at(0) == ' ') + suffix = suffix.substr(1, suffix.length()); } + } catch(exception& e) { cout << "Standard Error: " << e.what() << " has occurred in the utilities class Function splitAtComma. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; diff --git a/validcommands.cpp b/validcommands.cpp index 79b09d3..e0d6045 100644 --- a/validcommands.cpp +++ b/validcommands.cpp @@ -25,6 +25,9 @@ ValidCommands::ValidCommands() { commands["quit"] = "quit"; commands["collect.single"] = "collect.single"; commands["collect.shared"] = "collect.shared"; + commands["get.group"] = "get.group"; + commands["get.label"] = "get.label"; + commands["get.line"] = "get.line"; commands["rarefaction.single"] = "rarefaction.single"; commands["rarefaction.shared"] = "rarefaction.shared"; commands["summary.single"] = "summary.single"; diff --git a/validparameter.cpp b/validparameter.cpp index a82962f..fca5c8e 100644 --- a/validparameter.cpp +++ b/validparameter.cpp @@ -30,7 +30,7 @@ ValidParameters::ValidParameters() { parameters["format"] = "format"; parameters["precision"] = "precision"; parameters["label"] = "label"; - parameters["line"] = "line"; + parameters["line"] = "line"; parameters["iters"] = "iters"; parameters["jumble"] = "jumble"; parameters["freq"] = "freq"; @@ -40,10 +40,11 @@ ValidParameters::ValidParameters() { parameters["shared"] = "shared"; parameters["summary"] = "summary"; parameters["sharedsummary"] = "sharedsummary"; + parameters["abund"] = "abund"; parameters["random"] = "random"; parameters["groups"] = "groups"; parameters["calc"] = "calc"; - + } catch(exception& e) { cout << "Standard Error: " << e.what() << " has occurred in the ValidParameters class Function ValidParameters. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n"; -- 2.39.2