NCBI C++ ToolKit
blast_encoding.c
Go to the documentation of this file.

Go to the SVN repository for this file.

1 /* $Id: blast_encoding.c 72378 2016-05-04 14:59:01Z camacho $
2  * ===========================================================================
3  *
4  * PUBLIC DOMAIN NOTICE
5  * National Center for Biotechnology Information
6  *
7  * This software/database is a "United States Government Work" under the
8  * terms of the United States Copyright Act. It was written as part of
9  * the author's official duties as a United States Government employee and
10  * thus cannot be copyrighted. This software/database is freely available
11  * to the public for use. The National Library of Medicine and the U.S.
12  * Government have not placed any restriction on its use or reproduction.
13  *
14  * Although all reasonable efforts have been taken to ensure the accuracy
15  * and reliability of the software and data, the NLM and the U.S.
16  * Government do not and cannot warrant the performance or results that
17  * may be obtained by using this software or data. The NLM and the U.S.
18  * Government disclaim all warranties, express or implied, including
19  * warranties of performance, merchantability or fitness for any particular
20  * purpose.
21  *
22  * Please cite the author in any work or product based on this material.
23  *
24  * ===========================================================================
25  *
26  * Author: Christiam Camacho
27  *
28  */
29 
30 /** @file blast_encoding.c
31  * Definitions of static arrays defined in blast_encoding.h.
32  * @sa blast_encoding.h
33  */
34 
36 
38  15, /* Gap, 0 */
39  0, /* A, 1 */
40  1, /* C, 2 */
41  6, /* M, 3 */
42  2, /* G, 4 */
43  4, /* R, 5 */
44  9, /* S, 6 */
45  13, /* V, 7 */
46  3, /* T, 8 */
47  8, /* W, 9 */
48  5, /* Y, 10 */
49  12, /* H, 11 */
50  7, /* K, 12 */
51  11, /* D, 13 */
52  10, /* B, 14 */
53  14 /* N, 15 */
54 };
55 
57  1, /* A, 0 */
58  2, /* C, 1 */
59  4, /* G, 2 */
60  8, /* T, 3 */
61  5, /* R, 4 */
62  10, /* Y, 5 */
63  3, /* M, 6 */
64  12, /* K, 7 */
65  9, /* W, 8 */
66  6, /* S, 9 */
67  14, /* B, 10 */
68  13, /* D, 11 */
69  11, /* H, 12 */
70  7, /* V, 13 */
71  15, /* N, 14 */
72  0 /* Gap, 15 */
73 };
74 
76  'A', 'C', 'G', 'T', 'R', 'Y', 'M', 'K',
77  'W', 'S', 'B', 'D', 'H', 'V', 'N', '-'
78 };
79 
81  '-', 'A', 'C', 'M', 'G', 'R', 'S', 'V',
82  'T', 'W', 'Y', 'H', 'K', 'D', 'B', 'N'
83 };
84 
86 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
87 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
88 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
89 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
90 15, 0,10, 1,11,15,15, 2,12,15,15, 7,15, 6,14,15,
91 15,15, 4, 9, 3,15,13, 8,15, 5,15,15,15,15,15,15,
92 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
93 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15};
94 
96  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
97  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
98  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
99  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
100  0, 1,14, 2,13, 0, 0, 4,11, 0, 0,12, 0, 3,15, 0,
101  0, 0, 5, 6, 8, 0, 7, 9, 0,10, 0, 0, 0, 0, 0, 0,
102  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
103  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
104 
106  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
107  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
108  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,25, 0, 0, 0, 0, 0,
109  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
110  0, 1, 2, 3, 4, 5, 6, 7, 8, 9,27,10,11,12,13,26,
111 14,15,16,17,18,24,19,20,21,22,23, 0, 0, 0, 0, 0,
112  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
113  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
114 
116 '-','A','B','C','D','E','F','G','H','I','K','L','M',
117 'N','P','Q','R','S','T','V','W','X','Y','Z','U','*',
118 'O', 'J'};
119 
121 const Uint1 kNuclSentinel = 0xF;
Declarations of static arrays used to define some NCBI encodings to be used in a toolkit independent ...
const Uint1 BLASTNA_TO_NCBI4NA[BLASTNA_SIZE]
Translates between blastna and ncbi4na.
const Uint1 IUPACNA_TO_NCBI4NA[128]
Translates between iupacna and ncbi4na.
#define BLASTAA_SIZE
Size of aminoacid alphabet.
const char NCBI4NA_TO_IUPACNA[BLASTNA_SIZE]
Translates between ncbi4na and iupacna.
const char BLASTNA_TO_IUPACNA[BLASTNA_SIZE]
Translates between blastna and iupacna.
const Uint1 NCBI4NA_TO_BLASTNA[BLASTNA_SIZE]
Translates between ncbi4na and blastna.
const Uint1 AMINOACID_TO_NCBISTDAA[128]
Translates between ncbieaa and ncbistdaa.
#define BLASTNA_SIZE
Size of nucleic acid alphabet.
const Uint1 kProtSentinel
Sentinel byte for protein sequences.
const Uint1 kNuclSentinel
Sentinel nibble for nucleotide sequences.
const Uint1 IUPACNA_TO_BLASTNA[128]
Translates between iupacna and blastna.
const char NCBISTDAA_TO_AMINOACID[BLASTAA_SIZE]
Translates between ncbieaa and ncbistdaa.
uint8_t Uint1
1-byte (8-bit) unsigned integer
Definition: ncbitype.h:99
#define NULLB
terminating byte of a char* string.
Definition: ncbi_std.h:181
Modified on Sat May 25 14:16:42 2024 by modify_doxy.py rev. 669887