File: PairAligner.h

package info (click to toggle)
proda 1.0-12
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 584 kB
  • sloc: cpp: 8,549; xml: 163; makefile: 109; sh: 12
file content (32 lines) | stat: -rw-r--r-- 747 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
////////////////////////////////////////////////////////////////////////////
// PairAligner.h
//
// Find all pairwise alignments between two sequences
////////////////////////////////////////////////////////////////////////////

#ifndef PAIRALIGNER_H
#define PAIRALIGNER_H

#include "Sequence.h"
#include "ProbModel.h"
#include "AlignedFragment.h"

class PairAligner {
private:
	Sequence *seq1, *seq2;
	int *map;
	ProbModel *hmm;
	int xLen, yLen;

private:
	void UpdateMap(AlignedFragment *frag, int self = 0);
	void ConsistencyCheck(AVECT &pair_frags);
	
public:
	PairAligner(ProbModel *v_hmm, Sequence *s1, Sequence *s2);
	~PairAligner(){if(map) delete map;}
	void FastPairAlign(AVECT &fragments);
	void PairAlign( AVECT &fragments);
};

#endif