8 * Created by Pat Schloss on 12/15/08.
9 * Copyright 2008 Patrick D. Schloss. All rights reserved.
11 * This is a class for an abstract datatype for classes that implement various types of alignment algorithms.
12 * As of 12/18/08 these included alignments based on blastn, needleman-wunsch, and the Gotoh algorithms
17 #include "alignmentcell.hpp"
19 /**************************************************************************************************/
27 virtual void align(string, string) = 0;
28 virtual void alignPrimer(string, string) {}
31 // float getAlignmentScore();
34 map<int, int> getSeqAAlnBaseMap();
35 map<int, int> getSeqBAlnBaseMap();
36 int getCandidateStartPos();
37 int getCandidateEndPos();
38 int getTemplateStartPos();
39 int getTemplateEndPos();
41 int getPairwiseLength();
43 int getnRows() { return nRows; }
44 // int getLongestTemplateGap();
50 int seqAstart, seqAend;
51 int seqBstart, seqBend;
53 int nRows, nCols, lA, lB;
54 vector<vector<AlignmentCell> > alignment;
55 map<int, int> ABaseMap;
56 map<int, int> BBaseMap;
60 /**************************************************************************************************/