X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bam.h;h=c635e72767e31852ddf8b2759a3d9493d13e58bc;hb=78de989ec56e7c17e1fa854cb8c1c4f9ae08856c;hp=9330075ed10bcbcd67e3fba245f87909b56b42ef;hpb=431e646d3b2019312626cf111460ea3df7029962;p=samtools.git diff --git a/bam.h b/bam.h index 9330075..c635e72 100644 --- a/bam.h +++ b/bam.h @@ -100,7 +100,7 @@ typedef struct { int32_t n_targets; char **target_name; uint32_t *target_len; - void *hash; + void *hash, *rg2lib; int l_text; char *text; } bam_header_t; @@ -317,9 +317,16 @@ extern "C" { bam_header_t *sam_header_read(tamFile fp); int sam_header_parse(bam_header_t *h); + int sam_header_parse_rg(bam_header_t *h); #define sam_write1(header, b) bam_view1(header, b) + int bam_strmap_put(void *strmap, const char *rg, const char *lib); + const char *bam_strmap_get(const void *strmap, const char *rg); + void *bam_strmap_dup(const void*); + void *bam_strmap_init(); + void bam_strmap_destroy(void *strmap); + /*! @abstract Initialize a header structure. @return the pointer to the header structure @@ -593,7 +600,7 @@ extern "C" { void bam_aux_append(bam1_t *b, const char tag[2], char type, int len, uint8_t *data); // uint8_t *bam_aux_get_core(bam1_t *b, const char tag[2]); // an alias of bam_aux_get() - uint8_t *bam_aux_get(bam1_t *b, const char tag[2]); + uint8_t *bam_aux_get(const bam1_t *b, const char tag[2]); int32_t bam_aux2i(const uint8_t *s); float bam_aux2f(const uint8_t *s); double bam_aux2d(const uint8_t *s);