1 #ifndef INDICATORCOMMAND_H
2 #define INDICATORCOMMAND_H
8 * Created by westcott on 11/12/10.
9 * Copyright 2010 Schloss Lab. All rights reserved.
13 #include "command.hpp"
16 #include "globaldata.hpp"
17 #include "sharedrabundvector.h"
18 #include "sharedrabundfloatvector.h"
19 #include "inputdata.h"
21 class IndicatorCommand : public Command {
23 IndicatorCommand(string);
26 vector<string> getRequiredParameters();
27 vector<string> getValidParameters();
28 vector<string> getRequiredFiles();
29 map<string, vector<string> > getOutputFiles() { return outputTypes; }
34 GlobalData* globaldata;
37 string treefile, sharedfile, relabundfile, groups, label, inputFileName, outputDir;
38 bool abort, pickedGroups;
39 vector<string> outputNames, Groups;
40 map<string, vector<string> > outputTypes;
41 vector<SharedRAbundVector*> lookup;
42 vector<SharedRAbundFloatVector*> lookupFloat;
46 int GetIndicatorSpecies(Tree*&);
47 set<string> getDescendantList(Tree*&, int, map<int, set<string> >, map<int, set<int> >&);
48 vector<float> getValues(vector< vector<SharedRAbundVector*> >&);
49 vector<float> getValues(vector< vector<SharedRAbundFloatVector*> >&);
50 map<int, float> getLengthToLeaf(Tree*&);