X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=bam_maqcns.h;h=28733a5dbd8f467105d736bc4ffa1919be4d9e56;hb=5c4ef838b286eeb6fffc7c41ffbb776281963c8e;hp=2c94fec066b25552b6008f28b8c129f5672cccc5;hpb=635998cfe030da5f3dbec42a6daa3ca82fa5c871;p=samtools.git diff --git a/bam_maqcns.h b/bam_maqcns.h index 2c94fec..28733a5 100644 --- a/bam_maqcns.h +++ b/bam_maqcns.h @@ -3,11 +3,15 @@ #include "glf.h" +#define BAM_ERRMOD_MAQ2 0 +#define BAM_ERRMOD_MAQ 1 +#define BAM_ERRMOD_SOAP 2 + struct __bmc_aux_t; typedef struct { float het_rate, theta; - int n_hap; + int n_hap, cap_mapQ, errmod; float eta, q_r; double *fk, *coef; @@ -16,15 +20,17 @@ typedef struct { } bam_maqcns_t; typedef struct { - int q_indel; - float r_indel; + int q_indel; // indel sequencing error, phred scaled + float r_indel; // indel prior + float r_snp; // snp prior // hidden parameters, unchangeable from command line int mm_penalty, indel_err, ambi_thres; } bam_maqindel_opt_t; typedef struct { int indel1, indel2; - int cnt1, cnt2, cnt_ambi, cnt_anti; + int cnt1, cnt2, cnt_anti; + int cnt_ref, cnt_ambi; char *s[2]; // int gt, gl[2]; @@ -44,7 +50,8 @@ extern "C" { uint32_t glf2cns(const glf1_t *g, int q_r); bam_maqindel_opt_t *bam_maqindel_opt_init(); - bam_maqindel_ret_t *bam_maqindel(int n, int pos, const bam_maqindel_opt_t *mi, const bam_pileup1_t *pl, const char *ref); + bam_maqindel_ret_t *bam_maqindel(int n, int pos, const bam_maqindel_opt_t *mi, const bam_pileup1_t *pl, const char *ref, + int _n_types, int *_types); void bam_maqindel_ret_destroy(bam_maqindel_ret_t*); #ifdef __cplusplus