diff --git a/Assembly.cpp b/Assembly.cpp index 4982bc7..7e3895d 100644 --- a/Assembly.cpp +++ b/Assembly.cpp @@ -1299,7 +1299,6 @@ void ha_overlap_final(void) ha_idx = 0; ///rescue_edges(R_INF.paf, R_INF.reverse_paf, R_INF.total_reads, 4, 0.985); - fprintf(stderr, "[M::%s::%.3f*%.2f] ==> final overlap\n", __func__, yak_realtime(), yak_cputime() / yak_realtime()); } int ha_assemble(void) diff --git a/CommandLines.h b/CommandLines.h index 4267631..cbce419 100644 --- a/CommandLines.h +++ b/CommandLines.h @@ -3,7 +3,7 @@ #include -#define HA_VERSION "0.3.0-dirty-r185" +#define HA_VERSION "0.3.0-dirty-r186" #define VERBOSE 0 #define VERBOSE_GFA 0 diff --git a/Overlaps.cpp b/Overlaps.cpp index f5ff9cc..5f00770 100644 --- a/Overlaps.cpp +++ b/Overlaps.cpp @@ -13398,8 +13398,6 @@ int load_ma_hit_ts(ma_hit_t_alloc** x, char* read_file_name) } - - void write_ma(ma_hit_t* x, FILE* fp) { fwrite(&(x->qns), sizeof(x->qns), 1, fp); @@ -13466,35 +13464,28 @@ All_reads *RNF, char* output_file_name) free(gfa_name); } -int load_all_data_from_disk(ma_hit_t_alloc **sources, ma_hit_t_alloc **reverse_sources, -char* output_file_name) +int load_all_data_from_disk(ma_hit_t_alloc **sources, ma_hit_t_alloc **reverse_sources, char* output_file_name) { - char* gfa_name = (char*)malloc(strlen(output_file_name)+25); - sprintf(gfa_name, "%s.ovlp", output_file_name); - if(!load_All_reads(&R_INF, gfa_name)) - { + char* gfa_name = (char*)malloc(strlen(output_file_name)+25); + sprintf(gfa_name, "%s.ovlp", output_file_name); + if (!load_All_reads(&R_INF, gfa_name)) { free(gfa_name); - return 0; - } - sprintf(gfa_name, "%s.ovlp.source", output_file_name); - if(!load_ma_hit_ts(sources, gfa_name)) - { + return 0; + } + sprintf(gfa_name, "%s.ovlp.source", output_file_name); + if (!load_ma_hit_ts(sources, gfa_name)) { free(gfa_name); - return 0; - } - sprintf(gfa_name, "%s.ovlp.reverse", output_file_name); - if(!load_ma_hit_ts(reverse_sources, gfa_name)) - { + return 0; + } + sprintf(gfa_name, "%s.ovlp.reverse", output_file_name); + if (!load_ma_hit_ts(reverse_sources, gfa_name)) { free(gfa_name); - return 0; - } + return 0; + } free(gfa_name); - return 1; + return 1; } - - - // count the number of outgoing arcs, excluding reduced arcs static inline int count_out(const asg_t *g, uint32_t v) { diff --git a/Overlaps.h b/Overlaps.h index fb9d950..a41d151 100644 --- a/Overlaps.h +++ b/Overlaps.h @@ -47,9 +47,6 @@ #define CUT_DIF_HAP 12 - - - ///query is the read itself typedef struct { uint64_t qns; @@ -1033,4 +1030,4 @@ uint32_t is_bubble_check, uint32_t is_primary_check); uint32_t get_edge_from_source(ma_hit_t_alloc* sources, ma_sub_t *coverage_cut, R_to_U* ruIndex, int max_hang, int min_ovlp, uint32_t query, uint32_t target, asg_arc_t* t); -#endif \ No newline at end of file +#endif diff --git a/Process_Read.cpp b/Process_Read.cpp index a8d7ca4..e8cc448 100644 --- a/Process_Read.cpp +++ b/Process_Read.cpp @@ -1,9 +1,8 @@ -#include "Process_Read.h" #include #include #include #include -#include +#include "Process_Read.h" uint8_t seq_nt6_table[256] = { 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, @@ -29,34 +28,28 @@ char bit_t_seq_table_rc[256][4] = {{0}}; char s_H[5] = {'A', 'C', 'G', 'T', 'N'}; char rc_Table[5] = {'T', 'G', 'C', 'A', 'N'}; - void init_All_reads(All_reads* r) { + memset(r, 0, sizeof(All_reads)); r->index_size = READ_INIT_NUMBER; r->read_length = (uint64_t*)malloc(sizeof(uint64_t)*r->index_size); - r->read_sperate = NULL; - r->N_site = NULL; - r->total_reads_bases = 0; r->name_index_size = READ_INIT_NUMBER; r->name_index = (uint64_t*)malloc(sizeof(uint64_t)*r->name_index_size); r->name_index[0] = 0; - r->name = NULL; - r->total_name_length = 0; - r->total_reads = 0; - r->trio_flag = NULL; } void destory_All_reads(All_reads* r) { uint64_t i = 0; - for (i = 0; i < r->total_reads; i++) - { + for (i = 0; i < r->total_reads; i++) { if (r->N_site[i] != NULL) - { free(r->N_site[i]); - } free(r->read_sperate[i]); + if (r->paf) free(r->paf[i].buffer); + if (r->reverse_paf) free(r->reverse_paf[i].buffer); } + free(r->paf); + free(r->reverse_paf); free(r->N_site); free(r->read_sperate); free(r->name); @@ -114,7 +107,6 @@ void write_All_reads(All_reads* r, char* read_file_name) int load_All_reads(All_reads* r, char* read_file_name) { - //fprintf(stderr, "Loading reads from disk... \n"); char* index_name = (char*)malloc(strlen(read_file_name)+15); sprintf(index_name, "%s.bin", read_file_name); FILE* fp = fopen(index_name, "r"); @@ -146,7 +138,6 @@ int load_All_reads(All_reads* r, char* read_file_name) if (zero) { - r->N_site[i] = (uint64_t*)malloc(sizeof(uint64_t)*(zero + 1)); r->N_site[i][0] = zero; if (r->N_site[i][0]) @@ -158,7 +149,6 @@ int load_All_reads(All_reads* r, char* read_file_name) { r->N_site[i] = NULL; } - } r->read_length = (uint64_t*)malloc(sizeof(uint64_t)*r->total_reads); @@ -188,8 +178,6 @@ int load_All_reads(All_reads* r, char* read_file_name) r->cigars = (Compressed_Cigar_record*)malloc(sizeof(Compressed_Cigar_record)*r->total_reads); r->second_round_cigar = (Compressed_Cigar_record*)malloc(sizeof(Compressed_Cigar_record)*r->total_reads); - r->paf = (ma_hit_t_alloc*)malloc(sizeof(ma_hit_t_alloc)*r->total_reads); - r->reverse_paf = (ma_hit_t_alloc*)malloc(sizeof(ma_hit_t_alloc)*r->total_reads); for (i = 0; i < r->total_reads; i++) { r->second_round_cigar[i].size = r->cigars[i].size = 0; @@ -199,8 +187,6 @@ int load_All_reads(All_reads* r, char* read_file_name) r->second_round_cigar[i].lost_base_size = r->cigars[i].lost_base_size = 0; r->second_round_cigar[i].lost_base_length = r->cigars[i].lost_base_length = 0; r->second_round_cigar[i].lost_base = r->cigars[i].lost_base = NULL; - init_ma_hit_t_alloc(&(r->paf[i])); - init_ma_hit_t_alloc(&(r->reverse_paf[i])); } free(index_name); diff --git a/Process_Read.h b/Process_Read.h index e4baf86..ec9abd1 100644 --- a/Process_Read.h +++ b/Process_Read.h @@ -128,7 +128,6 @@ typedef struct ma_hit_t_alloc* paf; ma_hit_t_alloc* reverse_paf; - ma_sub_t* coverage_cut; } All_reads; extern All_reads R_INF;