X-Git-Url: https://git.donarmstrong.com/?p=mothur.git;a=blobdiff_plain;f=mothurout.h;h=3cf6fa4963672b5d69acb7de389eb266b957ba24;hp=33384034ae55ee7f11c72b48378fa59bfe29e16e;hb=615301e57c25e241356a9c2380648d117709458d;hpb=5b72d1cf3fa48730e5bb70d59cced1e43e1fe424 diff --git a/mothurout.h b/mothurout.h index 3338403..3cf6fa4 100644 --- a/mothurout.h +++ b/mothurout.h @@ -40,6 +40,7 @@ class MothurOut { void mothurOutEndLine(); //writes to cout and the logfile void mothurOut(string, ofstream&); //writes to the ofstream, cout and the logfile void mothurOutEndLine(ofstream&); //writes to the ofstream, cout and the logfile + void mothurOutJustToScreen(string); //writes to cout void mothurOutJustToLog(string); void errorOut(exception&, string, string); void closeLog(); @@ -69,17 +70,19 @@ class MothurOut { vector binLabelsInFile; vector currentBinLabels; string saveNextLabel, argv, sharedHeaderMode, groupMode; - bool printedHeaders, commandInputsConvertError; + bool printedHeaders, commandInputsConvertError, changedSeqNames, modifyNames; //functions from mothur.h //file operations bool dirCheck(string&); //completes path, appends appropriate / or \, makes sure dir is writable. - vector divideFile(string, int&); + vector divideFile(string, int&); //divides splitting unevenness by sequence + vector divideFilePerLine(string, int&); //divides splitting unevenness at line breaks int divideFile(string, int&, vector&); vector setFilePosEachLine(string, int&); vector setFilePosFasta(string, int&); string sortFile(string, string); int appendFiles(string, string); + int appendFilesWithoutHeaders(string, string); int renameFile(string, string); //oldname, newname string getFullPathName(string); string findProgramPath(string programName); @@ -90,7 +93,9 @@ class MothurOut { string getRootName(string); bool isBlank(string); int openOutputFile(string, ofstream&); + int openOutputFileBinary(string, ofstream&); int openOutputFileAppend(string, ofstream&); + int openOutputFileBinaryAppend(string, ofstream&); int openInputFile(string, ifstream&); int openInputFile(string, ifstream&, string); //no error given string getline(ifstream&); @@ -102,7 +107,10 @@ class MothurOut { set readAccnos(string); int readAccnos(string, vector&); map readNames(string); + map readNames(string, unsigned long int&); int readTax(string, map&); + vector readConsTax(string); + int readConsTax(string, map&); int readNames(string, map&, map&); int readNames(string, map&); int readNames(string, map&, bool); @@ -120,7 +128,9 @@ class MothurOut { bool checkReleaseVersion(ifstream&, string); bool anyLabelsToProcess(string, set&, string); bool inUsersGroups(vector, vector); + bool inUsersGroups(vector, vector< vector >); bool inUsersGroups(string, vector); + bool inUsersGroups(int, vector); void getNumSeqs(ifstream&, int&); int getNumSeqs(ifstream&); int getNumNames(string); @@ -139,9 +149,13 @@ class MothurOut { void splitAtDash(string&, vector&); void splitAtChar(string&, vector&, char); void splitAtChar(string&, string&, char); + vector splitWhiteSpaceWithQuotes(string); int removeConfidences(string&); + string removeQuotes(string); string makeList(vector&); bool isSubset(vector, vector); //bigSet, subset + int checkName(string&); + map > parseClasses(string); //math operation int factorial(int num); @@ -150,11 +164,20 @@ class MothurOut { float roundDist(float, int); unsigned int fromBase36(string); int getRandomIndex(int); //highest + double getStandardDeviation(vector&); + vector getStandardDeviation(vector< vector >&); + vector getStandardDeviation(vector< vector >&, vector&); + vector getAverages(vector< vector >&); + double getAverage(vector); + vector< vector > getStandardDeviation(vector< vector< vector > >&); + vector< vector > getStandardDeviation(vector< vector< vector > >&, vector< vector >&); + vector< vector > getAverages(vector< vector< vector > >&, string); + vector< vector > getAverages(vector< vector< vector > >&); int control_pressed; bool executing, runParse, jumble, gui, mothurCalling, debug; - //current files - if you add a new type you must edit optionParser->getParameters, get.current command and mothurOut->printCurrentFiles/clearCurrentFiles/getCurrentTypes. + //current files - if you add a new type you must edit optionParser->getParameters, get.current and set.current commands and mothurOut->printCurrentFiles/clearCurrentFiles/getCurrentTypes. add a get and set function. string getPhylipFile() { return phylipfile; } string getColumnFile() { return columnfile; } string getListFile() { return listfile; } @@ -177,6 +200,7 @@ class MothurOut { string getFlowFile() { return flowfile; } string getBiomFile() { return biomfile; } string getCountTableFile() { return counttablefile; } + string getSummaryFile() { return summaryfile; } string getProcessors() { return processors; } void setListFile(string f) { listfile = getFullPathName(f); } @@ -200,6 +224,7 @@ class MothurOut { void setTaxonomyFile(string f) { taxonomyfile = getFullPathName(f); } void setFlowFile(string f) { flowfile = getFullPathName(f); } void setBiomFile(string f) { biomfile = getFullPathName(f); } + void setSummaryFile(string f) { summaryfile = getFullPathName(f); } void setCountTableFile(string f) { counttablefile = getFullPathName(f); groupMode = "count"; } void setProcessors(string p) { processors = p; mothurOut("\nUsing " + toString(p) + " processors.\n"); } @@ -237,6 +262,7 @@ class MothurOut { flowfile = ""; biomfile = ""; counttablefile = ""; + summaryfile = ""; gui = false; printedHeaders = false; commandInputsConvertError = false; @@ -244,6 +270,8 @@ class MothurOut { debug = false; sharedHeaderMode = ""; groupMode = "group"; + changedSeqNames = false; + modifyNames = true; } ~MothurOut(); @@ -252,7 +280,7 @@ class MothurOut { string releaseDate, version; string accnosfile, phylipfile, columnfile, listfile, rabundfile, sabundfile, namefile, groupfile, designfile, taxonomyfile, biomfile; - string orderfile, treefile, sharedfile, ordergroupfile, relabundfile, fastafile, qualfile, sfffile, oligosfile, processors, flowfile, counttablefile; + string orderfile, treefile, sharedfile, ordergroupfile, relabundfile, fastafile, qualfile, sfffile, oligosfile, processors, flowfile, counttablefile, summaryfile; vector Groups; vector namesOfGroups;