#include "command.hpp"
-#include "inputdata.h"
-#include "sharedrabundvector.h"
-#include "validcalculator.h"
-#include "readphylipvector.h"
-class GlobalData;
+//class GlobalData;
+class GroupMap;
class HomovaCommand : public Command {
void help();
private:
- struct linePair {
- int start;
- int num;
- linePair(int i, int j) : start(i), num(j) {}
- };
- vector<linePair> lines;
-
- GlobalData* globaldata;
- GroupMap* designMap;
+ double runHOMOVA(ofstream& , map<string, vector<int> >, double);
+ double calcSigleSSWithin(vector<int>);
+ double calcBValue(map<string, vector<int> >, vector<double>&);
+ map<string, vector<int> > getRandomizedGroups(map<string, vector<int> >);
+
+ bool abort;
map<string, vector<string> > outputTypes;
-
- vector< vector<double> > matrix;
- bool abort, allLines, pickedGroups;
- set<string> labels; //holds labels to be used
- string format, groups, label, outputDir, inputDir, designfile, sets, phylipfile, calc, sharedfile;
- vector<string> Groups, outputNames, Sets;
- vector< vector<string> > namesOfGroupCombos;
- int iters, processors;
- vector<Calculator*> calculators;
-
- int driver(int, int, vector<SharedRAbundVector*>, string);
- int driver(int, int, vector<string>, string, vector< vector<double> >&);
- int process(vector<SharedRAbundVector*>);
- int calcHomova(ofstream&, int, vector<string>);
- map<string, double> calcWithin(vector< vector<double> >&, int, vector<string>, map<string, int>&);
- double calcTotal(int);
+ vector<string> outputNames;
+
+ string outputDir, inputDir, designFileName, phylipFileName;
+ GroupMap* designMap;
+ vector< vector<double> > distanceMatrix;
+ int iters;
+ double experimentwiseAlpha;
};
#endif
-
-