Victor
 All Data Structures Functions Variables Friends Pages
FSAlign.h
1 /* This file is part of Victor.
2 
3  Victor is free software: you can redistribute it and/or modify
4  it under the terms of the GNU General Public License as published by
5  the Free Software Foundation, either version 3 of the License, or
6  (at your option) any later version.
7 
8  Victor is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with Victor. If not, see <http://www.gnu.org/licenses/>.
15  */
16 
17 
18 #ifndef __FSAlign_H__
19 #define __FSAlign_H__
20 
21 #include <Align.h>
22 
23 namespace Victor { namespace Align2{
24 
30  class FSAlign : public Align {
31  public:
32 
33  // CONSTRUCTORS:
34 
37 
40  const vector<unsigned int> &v1, const vector<unsigned int> &v2);
41 
43  FSAlign(const FSAlign &orig);
44 
46  virtual ~FSAlign();
47 
48 
49  // OPERATORS:
50 
52  FSAlign& operator =(const FSAlign &orig);
53 
54 
55  // PREDICATES:
56 
58  virtual void getMultiMatch();
59 
60 
61  // MODIFIERS:
62 
64  virtual void copy(const FSAlign &orig);
65 
67  virtual FSAlign* newCopy();
68 
69 
70  // HELPERS:
71 
73  virtual void pCalculateMatrix(bool update = true);
74 
76  virtual void pCalculateMatrix(const vector<unsigned int> &v1,
77  const vector<unsigned int> &v2, bool update = true);
78 
79 
80  protected:
81 
82 
83  private:
84 
85  };
86 
87 }} // namespace
88 
89 #endif
Pairwise sequence and profile alignment.
Definition: Align.h:48
Base class for gap functions.
Definition: GapFunction.h:31
virtual void copy(const FSAlign &orig)
Copy orig object to this object ("deep copy").
Definition: FSAlign.cc:109
AlignmentData * ad
Pointer to AlignmentData.
Definition: Align.h:157
Implement free-shift "glocal" alignment.
Definition: FSAlign.h:30
virtual ~FSAlign()
Destructor.
Definition: FSAlign.cc:59
FSAlign & operator=(const FSAlign &orig)
Assignment operator.
Definition: FSAlign.cc:70
Base class for printing alignments.
Definition: AlignmentData.h:35
virtual void pCalculateMatrix(bool update=true)
Update/create matrix values.
Definition: FSAlign.cc:126
virtual FSAlign * newCopy()
Construct a new "deep copy" of this object.
Definition: FSAlign.cc:114
ScoringScheme * ss
Pointer to ScoringScheme.
Definition: Align.h:159
Base class for scoring schemes.
Definition: ScoringScheme.h:34
virtual void getMultiMatch()
Return two-element array containing an alignment with maximal score.
Definition: FSAlign.cc:83
GapFunction * gf
Pointer to GapFunction.
Definition: Align.h:158
FSAlign(AlignmentData *ad, GapFunction *gf, ScoringScheme *ss)
Default constructor.
Definition: FSAlign.cc:33