]> git.donarmstrong.com Git - mothur.git/blobdiff - heatmap.h
changes while testing
[mothur.git] / heatmap.h
index 56a56e4e841b4f258f5ab4f183db96acd7d6f268..2b491767d57e48c4a05728aa6a48cbfc6939b38f 100644 (file)
--- a/heatmap.h
+++ b/heatmap.h
 
 #include "rabundvector.hpp"
 #include "sharedrabundvector.h"
+#include "sharedrabundfloatvector.h"
 #include "datavector.hpp"
-#include "globaldata.hpp"
 
+
+/***********************************************************************/
+struct binCount {
+               int bin;
+               int abund;
+               binCount(int i, int j) : bin(i), abund(j) {}
+};
+/***********************************************************************/
+struct binCountFloat {
+               int bin;
+               float abund;
+               binCountFloat(int i, float j) : bin(i), abund(j) {}
+};
+
+/***********************************************************************/
+//sorts highest abund to lowest
+inline bool comparebinCounts(binCount left, binCount right){
+       return (left.abund > right.abund);      
+}
+/***********************************************************************/
+//sorts highest abund to lowest
+inline bool comparebinFloatCounts(binCountFloat left, binCountFloat right){
+       return (left.abund > right.abund);      
+}
 /***********************************************************************/
 
 class HeatMap {
        
        public:
-               HeatMap(string, string);
+               HeatMap(string, string, int, int, string, string);
                ~HeatMap(){};
        
-               void getPic(RAbundVector*);
-               void getPic(vector<SharedRAbundVector*>);
+               string getPic(RAbundVector*);
+               string getPic(vector<SharedRAbundVector*>);
+               string getPic(vector<SharedRAbundFloatVector*>);
 
        private:
-               void sortSharedVectors(vector<SharedRAbundVector*>& );
+               int sortSharedVectors(vector<SharedRAbundVector*>& );
+               int sortSharedVectors(vector<SharedRAbundFloatVector*>& );
+               int sortRabund(RAbundVector*&);
                void printLegend(int, float);
 
-               GlobalData* globaldata;
-               string format, sorted, groupComb, scaler;
+               string format, sorted, groupComb, scaler, outputDir, inputfile;
                ofstream outsvg;
+               MothurOut* m;
+               int numOTU, fontSize;
+               
+               map<int, int> orderTopGroup(vector<SharedRAbundVector*>&);
+               map<int, int> orderTopOtu(vector<SharedRAbundVector*>&);
+               map<int, int> orderShared(vector<SharedRAbundVector*>&);
+               map<int, int> orderTopGroup(vector<SharedRAbundFloatVector*>&);
+               map<int, int> orderTopOtu(vector<SharedRAbundFloatVector*>&);
+               map<int, int> orderShared(vector<SharedRAbundFloatVector*>&);
+
                        
 };