annotate SNV/SNVMix2_source/SNVMix2-v0.12.1-rc1/notes.h @ 1:6d4997bc1c18

Uploaded
author ryanmorin
date Wed, 12 Oct 2011 19:53:45 -0400
parents 74f5ea818cea
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
1 /*
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
2 * File: notes.h
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
3 * Author: rgoya
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
4 *
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
5 * Created on February 3, 2010, 12:37 PM
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
6 */
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
7
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
8 /*! @typedef
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
9 @abstract Structure for one alignment covering the pileup position.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
10 @field b pointer to the alignment
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
11 @field qpos position of the read base at the pileup site, 0-based
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
12 @field indel indel length; 0 for no indel, positive for ins and negative for del
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
13 @field is_del 1 iff the base on the padded read is a deletion
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
14 @field level the level of the read in the "viewer" mode
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
15
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
16 @discussion See also bam_plbuf_push() and bam_lplbuf_push(). The
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
17 difference between the two functions is that the former does not
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
18 set bam_pileup1_t::level, while the later does. Level helps the
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
19 implementation of alignment viewers, but calculating this has some
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
20 overhead.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
21 */
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
22 typedef struct {
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
23 bam1_t *b;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
24 int32_t qpos;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
25 int indel, level;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
26 uint32_t is_del:1, is_head:1, is_tail:1;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
27 } bam_pileup1_t;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
28
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
29 /*! @typedef
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
30 @abstract Structure for core alignment information.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
31 @field tid chromosome ID, defined by bam_header_t
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
32 @field pos 0-based leftmost coordinate
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
33 @field strand strand; 0 for forward and 1 otherwise
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
34 @field bin bin calculated by bam_reg2bin()
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
35 @field qual mapping quality
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
36 @field l_qname length of the query name
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
37 @field flag bitwise flag
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
38 @field n_cigar number of CIGAR operations
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
39 @field l_qseq length of the query sequence (read)
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
40 */
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
41 typedef struct {
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
42 int32_t tid;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
43 int32_t pos;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
44 uint32_t bin:16, qual:8, l_qname:8;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
45 uint32_t flag:16, n_cigar:16;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
46 int32_t l_qseq;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
47 int32_t mtid;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
48 int32_t mpos;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
49 int32_t isize;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
50 } bam1_core_t;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
51
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
52 /*! @typedef
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
53 @abstract Structure for one alignment.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
54 @field core core information about the alignment
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
55 @field l_aux length of auxiliary data
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
56 @field data_len current length of bam1_t::data
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
57 @field m_data maximum length of bam1_t::data
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
58 @field data all variable-length data, concatenated; structure: cigar-qname-seq-qual-aux
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
59
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
60 @discussion Notes:
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
61
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
62 1. qname is zero tailing and core.l_qname includes the tailing '\0'.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
63 2. l_qseq is calculated from the total length of an alignment block
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
64 on reading or from CIGAR.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
65 */
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
66 typedef struct {
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
67 bam1_core_t core;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
68 int l_aux, data_len, m_data;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
69 uint8_t *data;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
70 } bam1_t;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
71
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
72
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
73 /*! @typedef
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
74 @abstract Structure for one alignment covering the pileup position.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
75 @field b pointer to the alignment
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
76 @field qpos position of the read base at the pileup site, 0-based
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
77 @field indel indel length; 0 for no indel, positive for ins and negative for del
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
78 @field is_del 1 iff the base on the padded read is a deletion
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
79 @field level the level of the read in the "viewer" mode
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
80
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
81 @discussion See also bam_plbuf_push() and bam_lplbuf_push(). The
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
82 difference between the two functions is that the former does not
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
83 set bam_pileup1_t::level, while the later does. Level helps the
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
84 implementation of alignment viewers, but calculating this has some
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
85 overhead.
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
86 */
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
87 typedef struct {
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
88 bam1_t *b;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
89 int32_t qpos;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
90 int indel, level;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
91 uint32_t is_del:1, is_head:1, is_tail:1;
74f5ea818cea Uploaded
ryanmorin
parents:
diff changeset
92 } bam_pileup1_t;