source:trunk/src/Alignment.h@256

Last change on this file since 256 was 256, checked in by Peter, 17 years ago

• Property svn:eol-style set to `native`
• Property svn:keywords set to `Author Date Id Revision`
File size: 1.3 KB
Line
1// \$Id: Alignment.h 256 2005-03-03 18:33:01Z peter \$
2
3#ifndef _theplu_cpptools_alignment_
4#define _theplu_cpptools_alignment_
5
6#include <utility>
7#include <vector>
8
9namespace theplu {
10
11namespace gslapi {
12  class matrix;
13}
14
15namespace cpptools {
16// Jari, this should probably go somewhere else for doxygen to process.
17///
18/// All alignment algorithm should go into the aligment namespace
19///
20/// \brief Container for alignment algorithms
21///
22namespace alignment {
23
24  ///
25  /// Function calculating the score for the best aligning of two
26  /// sequences. In the dot_matrix \a A, elament \f\$ A_{ij} \f\$ is
27  /// score how well element i in the first sequence match to element
28  /// j in the other sequence. In the aligning the elements from the
29  /// two sequences are matched or a gap is added in one of the
30  /// sequences. The latter is penalized with \a gap, which means if
31  /// \a gap is large there will be no gaps in the best aligning (if
32  /// the sequences have the same length). \a path contains what
33  /// elements in \A that is used in the best path. In case of
34  /// degeneracy only one path is returned.
35  ///
36  /// @return score from the best aligning
37  ///
38  double NeedlemanWunsch(const gslapi::matrix& A,
39                         std::vector<std::pair<size_t, size_t> >& path,
40                         const double gap);
41
42}}} // of namespace alignment namespace cpptools and namespace theplu
43
44#endif
Note: See TracBrowser for help on using the repository browser.