1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
#ifndef TAXONOMYEQUALIZER_H
#define TAXONOMYEQUALIZER_H
/*
* taxonomyequalizer.h
* Mothur
*
* Created by westcott on 11/20/09.
* Copyright 2009 Schloss Lab. All rights reserved.
*
*/
#include "mothur.h"
#include "mothurout.h"
#include "utils.hpp"
//reads in taxonomy file and makes all the taxonomies the same length
//by appending the last taxon to a given taxonomy as many times as needed to
//make it as long as the longest taxonomy in the file
/**************************************************************************************************/
class TaxEqualizer {
public:
TaxEqualizer(string, int, string);
~TaxEqualizer() = default;;
string getEqualizedTaxFile() { return equalizedFile; }
int getHighestLevel() { return highestLevel; }
private:
string equalizedFile, testTax, outputDir;
bool containsConfidence;
int cutoff, highestLevel;
map<string, int> seqLevels; //maps name to level of taxonomy
int getHighestLevel(ifstream&); //scans taxonomy file to find taxonomy with highest level
MothurOut* m;
Utils util;
};
/**************************************************************************************************/
#endif
|