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
|
#ifndef SPLITMATRIX_H
#define SPLITMATRIX_H
/*
* splitmatrix.h
* Mothur
*
* Created by westcott on 5/19/10.
* Copyright 2010 Schloss Lab. All rights reserved.
*
*/
#include "mothur.h"
#include "mothurout.h"
#include "utils.hpp"
#include "counttable.h"
/******************************************************/
class SplitMatrix {
public:
SplitMatrix(string, string, string, string, float, float, int, bool, string, bool); //fastafile, namefile, countfile, taxFile, taxcutoff, cutoff, processors, classic, outputDir, usingVsearchToCLuster
~SplitMatrix() = default;
vector< map<string, string> > getDistanceFiles(); //returns map of distance files -> namefile sorted by distance file size
string getSingletonNames() { return singleton; } //returns namesfile or countfile containing singletons
//long long getNumSingleton() { return numSingleton; } //returns namesfile containing singletons
private:
MothurOut* m;
Utils util;
string distFile, namefile, singleton, taxFile, fastafile, outputDir, countfile;
vector< map< string, string> > dists;
float cutoff, distCutoff;
bool classic, usingVsearchToCLuster;
int processors;
void splitClassify();
int createDistanceFilesFromTax(vector<vector<string> >&, vector<string>);
int createFastaFilesFromTax(vector<vector<string> >&, vector<string>);
};
/******************************************************/
#endif
|