1 | #include "ali_profile.hxx" |
---|
2 | |
---|
3 | class ALI_PREALI { |
---|
4 | private: |
---|
5 | long (*helix)[]; |
---|
6 | char (*helix_border)[]; |
---|
7 | unsigned long helix_len; |
---|
8 | |
---|
9 | ALI_PROFILE prof; |
---|
10 | |
---|
11 | char normalize_char(char in); |
---|
12 | long normalize_sequence(char *gen_seq, char **norm_seq); |
---|
13 | void print_table(char *norm_seq, char *path_matrix, long line, long col); |
---|
14 | int map_path(char *path_matrix, long pcol_len, long seq_map[], |
---|
15 | long col, long line); |
---|
16 | int prealigner(char *norm_seq, unsigned long norm_seq_len, long **seq_map); |
---|
17 | int get_sequence(char *norm_seq, unsigned long norm_seq_len, long *seq_map, |
---|
18 | char **prealigned_seq, char **error_seq, |
---|
19 | float cost_low, float cost_middle, float cost_high); |
---|
20 | int check_helix(char prealigned_seq[], char error_seq[], |
---|
21 | unsigned long seq_len, double (*bind_matrix) [5][5]); |
---|
22 | |
---|
23 | int find_next_helix(char h1[], long h_len, int start_pos, |
---|
24 | int *helix_nr, int *start, int *end); |
---|
25 | int find_comp_helix(char h1[], long h_len, int start_pos, |
---|
26 | int helix_nr, int *start, int *end); |
---|
27 | void delete_comp_helix(char h1[], char h2[], long h_len, |
---|
28 | int start_pos, int end_pos); |
---|
29 | int map_helix(char h2[], long h_len, int start1, int end1, |
---|
30 | int start2, int end2); |
---|
31 | int make_helix(char *h1, char *h2); |
---|
32 | int make_intervalls(char *prealigned_seq, char *error_seq, |
---|
33 | unsigned long seq_len, |
---|
34 | int intervall_border, int intervall_center, |
---|
35 | char **intervall_seq); |
---|
36 | |
---|
37 | public: |
---|
38 | int insert_reference(char *gen_seq, double weight = 1.0); |
---|
39 | int calculate_costs(double *cost_matrix); |
---|
40 | int prealign_sequence(char *gen_seq, char *helix1, char *helix2, |
---|
41 | char **prealigned_seq, char **error_seq, |
---|
42 | char **intervall_seq, |
---|
43 | float cost_low, float cost_middle, float cost_high, |
---|
44 | double *bind_matrix, |
---|
45 | int intervall_border, int intervall_center); |
---|
46 | int get_reference(char **reference); |
---|
47 | int get_helix_border(char **border); |
---|
48 | }; |
---|
49 | |
---|