Next version of JABA
[jabaws.git] / binaries / src / clustalw / src / tree / AlignmentSteps.cpp
1 /**
2  * Author: Mark Larkin
3  * 
4  * Copyright (c) 2007 Des Higgins, Julie Thompson and Toby Gibson.  
5  */
6 #ifdef HAVE_CONFIG_H
7     #include "config.h"
8 #endif
9 #include "AlignmentSteps.h"
10
11 namespace clustalw
12 {
13
14 void AlignmentSteps::saveSet(int n, int *groups)
15 {
16     vector<int> tempVec;
17     tempVec.resize(n + 1);
18     tempVec[0] = 0;
19     for(int i = 1; i < n + 1; i++)
20     {
21         tempVec[i] = groups[i - 1];
22     } 
23     steps.push_back(tempVec);
24     numSteps++;
25 }
26
27 void AlignmentSteps::saveSet(vector<int>* groups)
28 {
29     steps.push_back(*groups);
30     numSteps++;
31 }
32
33 int AlignmentSteps::getNumSteps()
34 {
35     return numSteps;
36 }
37
38 void AlignmentSteps::printAlignSteps()
39 {
40     int rows = steps.size();
41     for(int i = 1; i < rows; i++)
42     {
43         for(int j = 1; j < (int)steps[i].size(); j++)
44         {
45             cout << " " << steps[i][j];
46         }
47         cout << "\n";
48     }
49     cout << "\n\n";
50 }
51
52 void AlignmentSteps::clear()
53 {
54     int size = steps.size();
55     for(int i = 0; i < size; i++)
56     {
57         steps[i].clear();
58     }
59     steps.clear();
60     steps.push_back(vector<int>());
61     numSteps = 0;
62 }
63
64 }