#include "command.hpp"
#include "sequence.hpp"
+#include "counttable.h"
/************************************************************/
struct seqRNode {
public:
ClusterFragmentsCommand(string);
ClusterFragmentsCommand();
- ~ClusterFragmentsCommand();
- vector<string> getRequiredParameters();
- vector<string> getValidParameters();
- vector<string> getRequiredFiles();
- map<string, vector<string> > getOutputFiles() { return outputTypes; }
- int execute();
- void help();
+ ~ClusterFragmentsCommand() {}
+
+ vector<string> setParameters();
+ string getCommandName() { return "cluster.fragments"; }
+ string getCommandCategory() { return "Sequence Processing"; }
+
+ string getHelpString();
+ string getOutputPattern(string);
+ string getCitation() { return "http://www.mothur.org/wiki/Cluster.fragments"; }
+ string getDescription() { return "creates a namesfile with sequences that are a fragment of a larger sequence"; }
+
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
private:
+ CountTable ct;
bool abort;
- string fastafile, namefile, outputDir;
+ string fastafile, namefile, countfile, outputDir;
int diffs, percent;
vector<seqRNode> alignSeqs;
map<string, string> names; //represents the names file first column maps to second column
map<string, int> sizes; //this map a seq name to the number of identical seqs in the names file
map<string, int>::iterator itSize;
vector<string> outputNames;
- map<string, vector<string> > outputTypes;
int readFASTA();
void readNameFile();