1 #ifndef BAM_CONSTANTS_H
2 #define BAM_CONSTANTS_H
9 const int BAM_SIZEOF_INT = 4;
11 // header magic number
12 const char* const BAM_HEADER_MAGIC = "BAM\001";
13 const unsigned int BAM_HEADER_MAGIC_SIZE = 4;
15 // BAM alignment core size
16 const int BAM_CORE_SIZE = 32;
18 // BAM alignment flags
19 const int BAM_ALIGNMENT_PAIRED = 1;
20 const int BAM_ALIGNMENT_PROPER_PAIR = 2;
21 const int BAM_ALIGNMENT_UNMAPPED = 4;
22 const int BAM_ALIGNMENT_MATE_UNMAPPED = 8;
23 const int BAM_ALIGNMENT_REVERSE_STRAND = 16;
24 const int BAM_ALIGNMENT_MATE_REVERSE_STRAND = 32;
25 const int BAM_ALIGNMENT_READ_1 = 64;
26 const int BAM_ALIGNMENT_READ_2 = 128;
27 const int BAM_ALIGNMENT_SECONDARY = 256;
28 const int BAM_ALIGNMENT_QC_FAILED = 512;
29 const int BAM_ALIGNMENT_DUPLICATE = 1024;
32 const char* const BAM_CIGAR_LOOKUP = "MIDNSHP";
33 const int BAM_CIGAR_MATCH = 0;
34 const int BAM_CIGAR_INS = 1;
35 const int BAM_CIGAR_DEL = 2;
36 const int BAM_CIGAR_REFSKIP = 3;
37 const int BAM_CIGAR_SOFTCLIP = 4;
38 const int BAM_CIGAR_HARDCLIP = 5;
39 const int BAM_CIGAR_PAD = 6;
41 const int BAM_CIGAR_SHIFT = 4;
42 const int BAM_CIGAR_MASK = ((1 << BAM_CIGAR_SHIFT) - 1);
45 const char* const BAM_DNA_LOOKUP = "=ACMGRSVTWYHKDBN";
47 } // namespace Constants
48 } // namespace BamTools
50 #endif // BAM_CONSTANTS_H