1 #ifndef _RNA_ALPHABET_
2 #define _RNA_ALPHABET_
3 
4 #include <string>
5 
6 
7 
8 typedef char RNA_Alphabet;
9 
10 /** pair alphabet of RNA_Alphabet */
11 typedef struct {
12     RNA_Alphabet a;
13     RNA_Alphabet b;
14 } RNA_AlphaPair;
15 
16 const int ALPHA_BASE_A='a';
17 const int ALPHA_BASE_C='c';
18 const int ALPHA_BASE_G='g';
19 const int ALPHA_BASE_U='u';
20 const int ALPHA_BASEPAIR='P';
21 const int ALPHA_GAP='-';
22 const int ALPHA_BASE='B';
23 
24 
25 const int RNA_ALPHABET_SIZE=8;
26 
27 const int ALPHA_PRO_BASE_A=0;
28 const int ALPHA_PRO_BASE_C=1;
29 const int ALPHA_PRO_BASE_G=2;
30 const int ALPHA_PRO_BASE_U=3;
31 const int ALPHA_PRO_BASEPAIR=4;
32 const int ALPHA_PRO_GAP=5;
33 const int ALPHA_PRO_BASE=6;
34 const int ALPHA_PRO_ANCHOR=7;
35 
36 struct RNA_Alphabet_Profile {
RNA_Alphabet_ProfileRNA_Alphabet_Profile37     RNA_Alphabet_Profile() {};
38 
39     double p[RNA_ALPHABET_SIZE];
40     std::string columnStr;
41 };
42 
43 int alpha2RNA_Alpha(char c);
44 
45 #endif
46