#include "mothur.h"
#include "command.hpp"
-#include "globaldata.hpp"
+
class ShhherCommand : public Command {
public:
ShhherCommand(string);
ShhherCommand();
- ~ShhherCommand();
- vector<string> getRequiredParameters();
- vector<string> getValidParameters();
- vector<string> getRequiredFiles();
- map<string, vector<string> > getOutputFiles() { return outputTypes; }
- int execute();
- void help();
+ ~ShhherCommand() {}
+
+ vector<string> setParameters();
+ string getCommandName() { return "shhh.seqs"; }
+ string getCommandCategory() { return "Hidden"; }
+ string getHelpString();
+ int execute();
+ void help() { m->mothurOut(getHelpString()); }
private:
- GlobalData* globaldata;
int abort;
- map<string, vector<string> > outputTypes;
- string outputDir, flowFileName, flowFilesFileName, lookupFileName;
+ string outputDir, flowFileName, flowFilesFileName, lookupFileName, compositeFASTAFileName;
+
int processors, maxIters;
float cutoff, sigma, minDelta;
+ string flowOrder;
vector<int> nSeqsBreaks;
vector<int> nOTUsBreaks;
- vector<double> flowDataPrI;
- vector<short> flowDataIntI;
- vector<int> lengths;
- vector<string> seqNameVector;
vector<double> singleLookUp;
vector<double> jointLookUp;
+
+ vector<string> seqNameVector;
+ vector<int> lengths;
+ vector<short> flowDataIntI;
+ vector<double> flowDataPrI;
map<string, int> nameMap;
vector<int> otuData;
vector<int> cumNumSeqs;
vector<int> nSeqsPerOTU;
vector<vector<int> > aaP; //tMaster->aanP: each row is a different otu / each col contains the sequence indices
- vector<int> seqNumber; //tMaster->anP: the sequence id number sorted by OTU
vector<vector<int> > aaI; //tMaster->aanI: that are in each otu - can't differentiate between aaP and aaI
+ vector<int> seqNumber; //tMaster->anP: the sequence id number sorted by OTU
vector<int> seqIndex; //tMaster->anI; the index that corresponds to seqNumber
vector<double> dist; //adDist - distance of sequences to centroids
vector<short> change; //did the centroid sequence change? 0 = no; 1 = yes
vector<double> singleTau; //tMaster->adTau: 1-D Tau vector (1xnumSeqs)
vector<short> uniqueFlowgrams;
vector<int> uniqueCount;
- vector<int> uniqueLengths;
vector<int> mapSeqToUnique;
vector<int> mapUniqueToSeq;
+ vector<int> uniqueLengths;
int numSeqs, numUniques, numOTUs, numFlowCells;
void getJointLookUp();
void getFlowData();
void getUniques();
- float getProbIntensity(int);
+ double getProbIntensity(int);
float calcPairwiseDist(int, int);
void flowDistParentFork(string, int, int);
};
-#endif
\ No newline at end of file
+#endif
+