File: rarefact.h

package info (click to toggle)
mothur 1.48.5-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 13,684 kB
  • sloc: cpp: 161,854; makefile: 122; sh: 31
file content (43 lines) | stat: -rwxr-xr-x 1,038 bytes parent folder | download | duplicates (6)
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
#ifndef RAREFACT_H
#define RAREFACT_H

#include "rarefactioncurvedata.h"
#include "raredisplay.h"
#include "ordervector.hpp"
#include "sharedrabundvectors.hpp"
#include "mothur.h"


class Rarefact {
	
public:
	Rarefact(OrderVector& o, vector<Display*> disp, set<int> en, int proc) :
    numSeqs(o.getNumSeqs()), order(o), displays(disp), label(o.getLabel()),  ends(en)  { m = MothurOut::getInstance(); jumble = false; processors = proc; }
    
	Rarefact(SharedRAbundVectors* shared, vector<Display*> disp, bool j, int proc) :
					 lookup(shared), displays(disp), jumble(j) {  m = MothurOut::getInstance(); processors = proc; }

	~Rarefact(){};
	int getCurve(float, int);
	int getSharedCurve(float, int);
	
private:
	
	OrderVector order;
	vector<Display*> displays;
	int numSeqs, numGroupComb, processors;
	string label;
    set<int> ends;
	void mergeVectors(SharedRAbundVector*, SharedRAbundVector*);
	SharedRAbundVectors* lookup;
	MothurOut* m;
    bool jumble;
    Utils util;
	
	int driver(vector<Display*>&, int, int);

};


#endif