]> git.donarmstrong.com Git - mothur.git/blobdiff - heatmap.h
changes while testing
[mothur.git] / heatmap.h
index fe79e43c81ced356e29a8919bd58ddfac7acbb6c..2b491767d57e48c4a05728aa6a48cbfc6939b38f 100644 (file)
--- a/heatmap.h
+++ b/heatmap.h
@@ -9,37 +9,72 @@
  *
  */
 
-using namespace std;
-
-#include "ordervector.hpp"
-#include "sabundvector.hpp"
-#include "sharedsabundvector.h"
-#include "sharedordervector.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();
+               HeatMap(string, string, int, int, string, string);
                ~HeatMap(){};
        
-               void getPic(OrderVector*);
-               void getPic(SharedOrderVector*);
+               string getPic(RAbundVector*);
+               string getPic(vector<SharedRAbundVector*>);
+               string getPic(vector<SharedRAbundFloatVector*>);
 
        private:
-               void getSharedVectors(SharedOrderVector*);
-               void setGroups();
-       
-               GlobalData* globaldata;
-               vector<SharedSAbundVector> lookup;
-               SAbundVector sabund;
-               string format;
+               int sortSharedVectors(vector<SharedRAbundVector*>& );
+               int sortSharedVectors(vector<SharedRAbundFloatVector*>& );
+               int sortRabund(RAbundVector*&);
+               void printLegend(int, float);
+
+               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*>&);
 
                        
 };
 
+/***********************************************************************/
+
 #endif
 
+
+
+