X-Git-Url: https://git.donarmstrong.com/?p=rsem.git;a=blobdiff_plain;f=sam%2Fbcftools%2Fbcf.h;h=f722525bc938cab8f36adfcefe9b527d357e735d;hp=822ae5cf80fd7f9dc375259524935c933f088323;hb=dbcf1cfb8ad1086c21d64e249f012809403e7ddc;hpb=58d504aaf36ae486b1dba6d03e0e9f1c25855037 diff --git a/sam/bcftools/bcf.h b/sam/bcftools/bcf.h index 822ae5c..f722525 100644 --- a/sam/bcftools/bcf.h +++ b/sam/bcftools/bcf.h @@ -28,7 +28,7 @@ #ifndef BCF_H #define BCF_H -#define BCF_VERSION "0.1.17-dev (r973:277)" +#define BCF_VERSION "0.1.19-44428cd" #include #include @@ -73,6 +73,7 @@ typedef struct { bcf_ginfo_t *gi; // array of geno fields int n_alleles, n_smpl; // number of alleles and samples // derived info: ref, alt, flt, info, fmt (<-str), n_gi (<-fmt), n_alleles (<-alt), n_smpl (<-bcf_hdr_t::n_smpl) + uint8_t *ploidy; // ploidy of all samples; if NULL, ploidy of 2 is assumed. } bcf1_t; typedef struct { @@ -122,6 +123,10 @@ extern "C" { char *bcf_fmt(const bcf_hdr_t *h, bcf1_t *b); // append more info int bcf_append_info(bcf1_t *b, const char *info, int l); + // remove tag + int remove_tag(char *string, const char *tag, char delim); + // remove info tag, string is the kstring holder of bcf1_t.str + void rm_info(kstring_t *string, const char *key); // copy int bcf_cpy(bcf1_t *r, const bcf1_t *b); @@ -142,6 +147,8 @@ extern "C" { // keep the first n alleles and discard the rest int bcf_shrink_alt(bcf1_t *b, int n); + // keep the masked alleles and discard the rest + void bcf_fit_alt(bcf1_t *b, int mask); // convert GL to PL int bcf_gl2pl(bcf1_t *b); // if the site is an indel