@@ -366,15 +366,18 @@ static inline void write_tags(kstring_t *s, const mm_reg1_t *r)
366366 if (r -> split ) mm_sprintf_lite (s , "\tzd:i:%d" , r -> split );
367367}
368368
369- void mm_write_paf3 (kstring_t * s , const mm_idx_t * mi , const mm_bseq1_t * t , const mm_reg1_t * r , void * km , int64_t opt_flag , int rep_len )
369+ void mm_write_paf4 (kstring_t * s , const mm_idx_t * mi , const mm_bseq1_t * t , const mm_reg1_t * r , void * km , int64_t opt_flag , int rep_len , int n_seg , int seg_idx )
370370{
371371 s -> l = 0 ;
372+ mm_sprintf_lite (s , "%s" , t -> name );
373+ if ((opt_flag & MM_F_FRAG_MODE ) && n_seg >= 2 && seg_idx >= 0 )
374+ mm_sprintf_lite (s , "/%d" , seg_idx + 1 );
372375 if (r == 0 ) {
373- mm_sprintf_lite (s , "%s \t%d\t0\t0\t*\t*\t0\t0\t0\t0\t0\t0" , t -> name , t -> l_seq );
376+ mm_sprintf_lite (s , "\t%d\t0\t0\t*\t*\t0\t0\t0\t0\t0\t0" , t -> l_seq );
374377 if (rep_len >= 0 ) mm_sprintf_lite (s , "\trl:i:%d" , rep_len );
375378 return ;
376379 }
377- mm_sprintf_lite (s , "%s \t%d\t%d\t%d\t%c\t" , t -> name , t -> l_seq , r -> qs , r -> qe , "+-" [r -> rev ]);
380+ mm_sprintf_lite (s , "\t%d\t%d\t%d\t%c\t" , t -> l_seq , r -> qs , r -> qe , "+-" [r -> rev ]);
378381 if (mi -> seq [r -> rid ].name ) mm_sprintf_lite (s , "%s" , mi -> seq [r -> rid ].name );
379382 else mm_sprintf_lite (s , "%d" , r -> rid );
380383 mm_sprintf_lite (s , "\t%d" , mi -> seq [r -> rid ].len );
@@ -398,6 +401,11 @@ void mm_write_paf3(kstring_t *s, const mm_idx_t *mi, const mm_bseq1_t *t, const
398401 mm_sprintf_lite (s , "\t%s" , t -> comment );
399402}
400403
404+ void mm_write_paf3 (kstring_t * s , const mm_idx_t * mi , const mm_bseq1_t * t , const mm_reg1_t * r , void * km , int64_t opt_flag , int rep_len )
405+ {
406+ mm_write_paf4 (s , mi , t , r , km , opt_flag , rep_len , 0 , 0 );
407+ }
408+
401409void mm_write_paf (kstring_t * s , const mm_idx_t * mi , const mm_bseq1_t * t , const mm_reg1_t * r , void * km , int64_t opt_flag )
402410{
403411 mm_write_paf3 (s , mi , t , r , km , opt_flag , -1 );
0 commit comments