def convert(self): seg_num = self.segments.num process_num = self.process_num if process_num > seg_num: process_num = seg_num pool = Pool(processes = process_num) args_list = [] for j in range(0, seg_num): seg_name = self.segments[j][0] chrom = self.segments[j][1] start = self.segments[j][2] end = self.segments[j][3] args_tuple = (seg_name, chrom, start, end, self.normal_bam_filename, self.tumor_bam_filename, self.reference_genome_filename, self.min_depth, self.min_bqual, self.min_mqual) args_list.append(args_tuple) counts_tuple_list = pool.map(process_by_segment, args_list) paired_counts = [] BAF_counts = [] for counts_tuple_j in counts_tuple_list: paired_counts_j, BAF_counts_j = counts_tuple_j paired_counts.append(paired_counts_j) BAF_counts.append(BAF_counts_j) BAF_heatmap = BAFHeatMap(BAF_counts) BAF_heatmap.write_heatmap(self.filename_base) data = Data(self.segments, paired_counts) data.tumor_LOH_test(self.WES_flag) data.write_data(self.filename_base)