5 * Created by Sarah Westcott on 3/25/09.
6 * Copyright 2009 Schloss Lab UMASS Amherst. All rights reserved.
10 #include "heatmapcommand.h"
13 //**********************************************************************************************************************
15 HeatMapCommand::HeatMapCommand(){
17 globaldata = GlobalData::getInstance();
18 heatmap = new HeatMap();
19 format = globaldata->getFormat();
22 cout << "Standard Error: " << e.what() << " has occurred in the HeatMapCommand class Function HeatMapCommand. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
26 cout << "An unknown error has occurred in the HeatMapCommand class function HeatMapCommand. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
30 //**********************************************************************************************************************
32 HeatMapCommand::~HeatMapCommand(){
38 //**********************************************************************************************************************
40 int HeatMapCommand::execute(){
44 if (format == "sharedfile") {
46 read = new ReadOTUFile(globaldata->inputFileName);
47 read->read(&*globaldata);
49 input = globaldata->ginput;
50 lookup = input->getSharedRAbundVectors();
51 }else if (format == "shared") {
52 //you are using a list and a groupfile
53 read = new ReadOTUFile(globaldata->inputFileName);
54 read->read(&*globaldata);
56 input = globaldata->ginput;
57 SharedList = globaldata->gSharedList;
58 lookup = SharedList->getSharedRAbundVector();
59 }else if (format == "list") {
60 //you are using just a list file and have only one group
61 read = new ReadOTUFile(globaldata->inputFileName);
62 read->read(&*globaldata);
64 rabund = globaldata->rabund;
65 input = globaldata->ginput;
68 if (format != "list") {
70 while(lookup[0] != NULL){
72 if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(lookup[0]->getLabel()) == 1){
74 cout << lookup[0]->getLabel() << '\t' << count << endl;
75 heatmap->getPic(lookup);
78 //get next line to process
79 lookup = input->getSharedRAbundVectors();
83 //reset groups parameter
84 globaldata->Groups.clear();
88 while(rabund != NULL){
90 if(globaldata->allLines == 1 || globaldata->lines.count(count) == 1 || globaldata->labels.count(rabund->getLabel()) == 1){
92 cout << rabund->getLabel() << '\t' << count << endl;
93 heatmap->getPic(rabund);
96 rabund = input->getRAbundVector();
101 globaldata->setGroups("");
104 catch(exception& e) {
105 cout << "Standard Error: " << e.what() << " has occurred in the HeatMapCommand class Function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
109 cout << "An unknown error has occurred in the HeatMapCommand class function execute. Please contact Pat Schloss at pschloss@microbio.umass.edu." << "\n";
114 //**********************************************************************************************************************