]> git.donarmstrong.com Git - mothur.git/blobdiff - chimeraseqscommand.h
added list.seqs command
[mothur.git] / chimeraseqscommand.h
index 5b55120e0d0981b432f71332dc1db57e8fae5ce7..2398ce63b257935d857e06bf6525b6b94e8efd05 100644 (file)
 typedef list<PCell>::iterator MatData;
 typedef map<int, float> SeqMap;  //maps sequence to all distance for that seqeunce
 
+struct Preference {
+               string name;
+               vector<string> leftParent; //keep the name of closest left associated with the two scores
+               vector<string> rightParent; //keep the name of closest right associated with the two scores
+               vector<float> score;  //so you can keep last score and calc this score and keep whichever is bigger.
+               vector<float> closestLeft;  //keep the closest left associated with the two scores
+               vector<float> closestRight; //keep the closest right associated with the two scores
+               int midpoint;
+
+};
+
+
+
 /***********************************************************/
 
 class ChimeraSeqsCommand : public Command {
@@ -29,28 +42,21 @@ public:
        int execute();
        void help();
        
+               
 private:
-       //Dist* distCalculator;
        
-       struct Preference {
-               string leftParent;
-               string rightParent;
-               float score;
-
-       };
-
        Dist* distCalculator;
        bool abort;
        string method, fastafile;
        bool filter, correction;
-       int processors, midpoint;
+       int processors, midpoint, averageLeft, averageRight, window, iters, increment;
        FilterSeqsCommand* filterSeqs;
+       ListVector* list;
        vector<Sequence> seqs;
        vector<Preference> pref;
        
-       int findAverageMidPoint();
        void readSeqs();
-       void generatePreferences(SparseMatrix*, SparseMatrix*);
+       void generatePreferences(vector<SeqMap>, vector<SeqMap>, int);
        int createSparseMatrix(int, int, SparseMatrix*, vector<Sequence>);