X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=collect.cpp;h=78fd05c0c9470117b9750096cbdf8a8a5a6a15f3;hb=b553a5240d60e4e2b267fa26e4ba6c55acaba795;hp=ec5366b627d8e8f776ffd00c0bb63f98a748f4bc;hpb=75c5a235ac3eb22e0f97d36874f4b2dcf9591f2e;p=mothur.git diff --git a/collect.cpp b/collect.cpp index ec5366b..78fd05c 100644 --- a/collect.cpp +++ b/collect.cpp @@ -70,19 +70,17 @@ int Collect::getCurve(float percentFreq = 0.01){ /***********************************************************************/ int Collect::getSharedCurve(float percentFreq = 0.01){ try { - globaldata = GlobalData::getInstance(); vector lookup; vector subset; //create and initialize vector of sharedvectors, one for each group - for (int i = 0; i < globaldata->Groups.size(); i++) { + for (int i = 0; i < m->Groups.size(); i++) { SharedRAbundVector* temp = new SharedRAbundVector(sharedorder->getNumBins()); temp->setLabel(sharedorder->getLabel()); - temp->setGroup(globaldata->Groups[i]); - temp->setGroupIndex(globaldata->gGroupmap->groupIndex[globaldata->Groups[i]]); - lookup.push_back(temp); + temp->setGroup(m->Groups[i]); + lookup.push_back(temp); } - + SharedCollectorsCurveData* ccd = new SharedCollectorsCurveData(); //initialize labels for output @@ -116,7 +114,7 @@ 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()) { @@ -143,14 +141,16 @@ try { for (int w = 0; w < lookup.size(); w++) { if ((w != k) && (w != l)) { subset.push_back(lookup[w]); } } - - ccd->updateSharedData(subset, i+1, globaldata->Groups.size(), pair); + + ccd->updateSharedData(subset, i+1, m->Groups.size(), pair); } n++; } + //if this is a calculator that can do multiples then do them pair = false; - ccd->updateSharedData(lookup, i+1, globaldata->Groups.size(), pair); + ccd->updateSharedData(lookup, i+1, m->Groups.size(), pair); + } totalNumSeq = i+1; } @@ -171,15 +171,15 @@ try { if ((w != k) && (w != l)) { subset.push_back(lookup[w]); } } - ccd->updateSharedData(subset, totalNumSeq, globaldata->Groups.size(), pair); + ccd->updateSharedData(subset, totalNumSeq, m->Groups.size(), pair); } n++; } //if this is a calculator that can do multiples then do them pair = false; - ccd->updateSharedData(lookup, totalNumSeq, globaldata->Groups.size(), pair); + ccd->updateSharedData(lookup, totalNumSeq, m->Groups.size(), pair); } - + //resets output files for(int i=0;ireset(); @@ -208,9 +208,9 @@ void Collect::getGroupComb() { numGroupComb = 0; int n = 1; - for (int i = 0; i < (globaldata->Groups.size() - 1); i++) { - for (int l = n; l < globaldata->Groups.size(); l++) { - group = globaldata->Groups[i] + globaldata->Groups[l]; + for (int i = 0; i < (m->Groups.size() - 1); i++) { + for (int l = n; l < m->Groups.size(); l++) { + group = m->Groups[i] + m->Groups[l]; groupComb.push_back(group); numGroupComb++; }