]> git.donarmstrong.com Git - samtools.git/blobdiff - bam.h
* samtools-0.1.3-20 (r276)
[samtools.git] / bam.h
diff --git a/bam.h b/bam.h
index b607f96cc80ec4f3100380b051cb87a54675ac68..163dc893e192d6eaa9ebfcc3b3b8614d142ca211 100644 (file)
--- a/bam.h
+++ b/bam.h
@@ -315,6 +315,9 @@ extern "C" {
         */
        bam_header_t *sam_header_read2(const char *fn_list);
 
+       bam_header_t *sam_header_read(tamFile fp);
+       int sam_header_parse(bam_header_t *h);
+
 #define sam_write1(header, b) bam_view1(header, b)
 
        /*!
@@ -404,11 +407,12 @@ extern "C" {
        } while (0)
 
        /*!
-         @abstract       Print an alignment to the standard output in TAM format.
+         @abstract       Format a BAM record in the SAM format
          @param  header  pointer to the header structure
          @param  b       alignment to print
+         @return         a pointer to the SAM string
         */
-       void bam_view1(const bam_header_t *header, const bam1_t *b);
+       char *bam_format1(const bam_header_t *header, const bam1_t *b);
 
        /*!
          @abstract    Merge multiple sorted BAM.
@@ -511,17 +515,6 @@ extern "C" {
         */
        int bam_plbuf_push(const bam1_t *b, bam_plbuf_t *buf);
 
-       /*!
-         @abstract         A more convenient interface to bam_plbuf_push()
-         @param  fp        BAM file handler
-         @param  func      user defined function
-         @param  func_data user provided data
-
-         @discussion The file position indicator must be placed right
-         before the start of an alignment. See also bam_plbuf_push().
-        */
-       int bam_pileup_file(bamFile fp, int mask, bam_pileup_f func, void *func_data);
-
        struct __bam_lplbuf_t;
        typedef struct __bam_lplbuf_t bam_lplbuf_t;
 
@@ -606,6 +599,35 @@ extern "C" {
        char bam_aux2A(const uint8_t *s);
        char *bam_aux2Z(const uint8_t *s);
 
+       /*!
+        @abstract     Get the color encoding the previous and current base
+        @param b      pointer to an alignment
+        @param i      The i-th position, 0-based
+        @return       color
+
+        @discussion   Returns 0 no color information is found.
+        */
+       char bam_aux_getCSi(bam1_t *b, int i);
+
+       /*!
+        @abstract     Get the color quality of the color encoding the previous and current base
+        @param b      pointer to an alignment
+        @param i      The i-th position, 0-based
+        @return       color quality
+
+        @discussion   Returns 0 no color information is found.
+        */
+       char bam_aux_getCQi(bam1_t *b, int i);
+
+       /*!
+        @abstract     Get the color error profile at the give position    
+        @param b      pointer to an alignment
+        @return       the original color if the color was an error, '-' (dash) otherwise
+
+        @discussion   Returns 0 no color information is found.
+        */
+       char bam_aux_getCEi(bam1_t *b, int i);
+
        /*!  
          @abstract Calculate the rightmost coordinate of an alignment on the
          reference genome.