X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=matrixoutputcommand.h;h=90f120602e70dc04600b3048bab41bde21b21edc;hp=762b0e10a02b0428e6a3e8119c1e0a2ee0887d84;hb=1a20e24ee786195ab0e1cccd4f5aede7a88f3f4e;hpb=6b2ac07f3e9ee57594d2358a3a25f9f700bd7362 diff --git a/matrixoutputcommand.h b/matrixoutputcommand.h index 762b0e1..90f1206 100644 --- a/matrixoutputcommand.h +++ b/matrixoutputcommand.h @@ -73,7 +73,9 @@ public: vector setParameters(); string getCommandName() { return "dist.shared"; } string getCommandCategory() { return "OTU-Based Approaches"; } + string getHelpString(); + string getOutputPattern(string); string getCitation() { return "http://www.mothur.org/wiki/Dist.shared"; } string getDescription() { return "generate a distance matrix that describes the dissimilarity among multiple groups"; } @@ -88,7 +90,7 @@ private: }; vector lines; - void printSims(ostream&, vector< vector >&); + void printSims(ostream&, vector< vector >&); int process(vector); vector matrixCalculators; @@ -96,12 +98,12 @@ private: InputData* input; vector lookup; string exportFileName, output, sharedfile; - int numGroups, processors; + int numGroups, processors, iters, subsampleSize; ofstream out; - bool abort, allLines; + bool abort, allLines, subsample; set labels; //holds labels to be used - string outputFile, calc, groups, label, outputDir; + string outputFile, calc, groups, label, outputDir, mode; vector Estimators, Groups, outputNames; //holds estimators to be used int process(vector, string, string); int driver(vector, int, int, vector< vector >&); @@ -119,6 +121,7 @@ struct distSharedData { unsigned long long start; unsigned long long end; MothurOut* m; + int count; distSharedData(){} distSharedData(MothurOut* mout, unsigned long long st, unsigned long long en, vector est, vector lu) { @@ -127,10 +130,11 @@ struct distSharedData { end = en; Estimators = est; thisLookup = lu; + count = 0; } }; /**************************************************************************************************/ -#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) +#if defined (__APPLE__) || (__MACH__) || (linux) || (__linux) || (__linux__) || (__unix__) || (__unix) #else static DWORD WINAPI MyDistSharedThreadFunction(LPVOID lpParam){ distSharedData* pDataArray; @@ -228,7 +232,7 @@ static DWORD WINAPI MyDistSharedThreadFunction(LPVOID lpParam){ vector subset; for (int k = pDataArray->start; k < pDataArray->end; k++) { // pass cdd each set of groups to compare - + pDataArray->count++; for (int l = 0; l < k; l++) { if (k != l) { //we dont need to similiarity of a groups to itself