mirror of
https://github.com/chhylp123/hifiasm.git
synced 2026-10-07 15:38:11 +08:00
code clean
This commit is contained in:
@@ -3,6 +3,98 @@
|
||||
#include "Overlaps.h"
|
||||
#include "Process_Read.h"
|
||||
|
||||
#define G_CHAIN_BW 16//128
|
||||
#define FLANK_M (0x7fffU)
|
||||
#define P_CHAIN_COV 0.985
|
||||
#define P_FRAGEMENT_CHAIN_COV 0.20
|
||||
#define P_FRAGEMENT_PRIMARY_CHAIN_COV 0.70
|
||||
#define P_FRAGEMENT_PRIMARY_SECOND_COV 0.25
|
||||
#define P_CHAIN_SCORE 0.6
|
||||
#define G_CHAIN_GAP 0.1
|
||||
#define UG_SKIP 5
|
||||
#define RG_SKIP 25
|
||||
#define G_CHAIN_TRANS_RATE 0.25
|
||||
#define G_CHAIN_TRANS_WEIGHT -1
|
||||
#define G_CHAIN_INDEL 128
|
||||
#define W_CHN_PEN_GAP 0.1
|
||||
#define N_GCHAIN_RATE 0.04
|
||||
#define PRIMARY_UL_CHAIN_MIN 75000
|
||||
|
||||
typedef struct {
|
||||
int w, k, bw, max_gap, is_HPC, hap_n, occ_weight, max_gap_pre, max_gc_seq_ext, seed;
|
||||
int max_lc_skip, max_lc_iter, min_lc_cnt, min_lc_score, max_gc_skip, ref_bonus;
|
||||
int min_gc_cnt, min_gc_score, sub_diff, best_n;
|
||||
float chn_pen_gap, mask_level, pri_ratio;
|
||||
///base-alignment
|
||||
double bw_thres, diff_ec_ul, diff_ec_ul_low; int max_n_chain, ec_ul_round;
|
||||
} mg_idxopt_t;
|
||||
|
||||
struct mg_tbuf_s {
|
||||
void *km;
|
||||
int frag_gap;
|
||||
};
|
||||
typedef struct mg_tbuf_s mg_tbuf_t;
|
||||
|
||||
|
||||
mg_tbuf_t *mg_tbuf_init(void);
|
||||
|
||||
void mg_tbuf_destroy(mg_tbuf_t *b);
|
||||
|
||||
void *mg_tbuf_get_km(mg_tbuf_t *b);
|
||||
|
||||
typedef struct {
|
||||
FILE *fp;
|
||||
ul_vec_t u;
|
||||
uint64_t flag;
|
||||
} ucr_file_t;
|
||||
|
||||
typedef struct {
|
||||
int32_t off, cnt;
|
||||
uint32_t v;
|
||||
int32_t score;
|
||||
} mg_llchain_t;
|
||||
|
||||
typedef struct {
|
||||
int32_t id, parent;
|
||||
int32_t off, cnt;
|
||||
int32_t n_anchor, score;
|
||||
int32_t qs, qe;
|
||||
int32_t plen, ps, pe;
|
||||
int32_t blen, mlen;
|
||||
float div;
|
||||
uint32_t hash;
|
||||
int32_t subsc, n_sub;
|
||||
uint32_t mapq:8, flt:1, dummy:23;
|
||||
} mg_gchain_t;
|
||||
|
||||
typedef struct {
|
||||
size_t n,m;
|
||||
uint64_t *a, tl;
|
||||
kvec_t(char) cc;
|
||||
} mg_dbn_t;
|
||||
|
||||
typedef struct {
|
||||
int32_t cnt;
|
||||
uint32_t v;
|
||||
int32_t score;
|
||||
uint32_t qs, qe, ts, te;
|
||||
} mg_lres_t;
|
||||
|
||||
typedef struct {
|
||||
int32_t n_gc, n_lc;
|
||||
mg_gchain_t *gc;///g_chain; idx in l_chains
|
||||
mg_lres_t *lc;///l_chain
|
||||
uint64_t qid, qlen;
|
||||
} mg_gres_t;
|
||||
|
||||
typedef struct {
|
||||
size_t n,m;
|
||||
mg_gres_t *a;
|
||||
uint64_t total_base;
|
||||
uint64_t total_pair;
|
||||
} mg_gres_a;
|
||||
|
||||
void push_uc_block_t(const ug_opt_t *uopt, kv_ul_ov_t *z, char **seq, uint64_t *len, uint64_t b_id);
|
||||
void ul_resolve(ma_ug_t *ug, const asg_t *rg, const ug_opt_t *uopt, int hap_n);
|
||||
void ul_load(const ug_opt_t *uopt);
|
||||
uint64_t* get_hifi2ul_list(all_ul_t *x, uint64_t hid, uint64_t* a_n);
|
||||
|
||||
Reference in New Issue
Block a user