From fd2ea98beda89df13d26734acbea355de6400a23 Mon Sep 17 00:00:00 2001 From: kortschak Date: Fri, 8 Jun 2012 07:46:26 +0930 Subject: [PATCH] Update bam1_core_t and bam1_t documentation * Query strand is no longer represented by a field of its own. * The order of segments in data appears to have changed. * Added notes about encoding of cigar and seq data in the bam1_t.data byte array. --- bam.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bam.h b/bam.h index f3f37f3..95cf8fa 100644 --- a/bam.h +++ b/bam.h @@ -168,7 +168,6 @@ typedef struct { @abstract Structure for core alignment information. @field tid chromosome ID, defined by bam_header_t @field pos 0-based leftmost coordinate - @field strand strand; 0 for forward and 1 otherwise @field bin bin calculated by bam_reg2bin() @field qual mapping quality @field l_qname length of the query name @@ -193,13 +192,15 @@ typedef struct { @field l_aux length of auxiliary data @field data_len current length of bam1_t::data @field m_data maximum length of bam1_t::data - @field data all variable-length data, concatenated; structure: cigar-qname-seq-qual-aux + @field data all variable-length data, concatenated; structure: qname-cigar-seq-qual-aux @discussion Notes: 1. qname is zero tailing and core.l_qname includes the tailing '\0'. 2. l_qseq is calculated from the total length of an alignment block on reading or from CIGAR. + 3. cigar data is encoded 4 bytes per CIGAR operation. + 4. seq is nybble-encoded according to bam_nt16_table. */ typedef struct { bam1_core_t core; -- 2.39.2