Exemple #1
0
SEXP report_hic_binned_pairs (SEXP num_in_chrs, SEXP bwidth, SEXP pairlen, SEXP chrs, SEXP pos,
		SEXP flag, SEXP cigar, SEXP mapqual, SEXP chimera_strict, SEXP chimera_span,
		SEXP minqual, SEXP do_dedup) try {
	simple_finder ff(num_in_chrs, bwidth);
	check_invalid_by_dist invchim(chimera_span);
	return internal_loop(&ff, &no_status_check, &invchim,
		pairlen, chrs, pos, flag, cigar, mapqual, chimera_strict, minqual, do_dedup);
} catch (std::exception& e) {
	return mkString(e.what());
}
Exemple #2
0
int main(void)
{
    internal_setup();

    while (true) {
        internal_loop();
    }

    return 0;
}
Exemple #3
0
SEXP report_hic_pairs (SEXP start_list, SEXP end_list, SEXP pairlen, SEXP chrs, SEXP pos,
		SEXP flag, SEXP cigar, SEXP mapqual, SEXP chimera_strict, SEXP chimera_span, 
		SEXP minqual, SEXP do_dedup) try {
	fragment_finder ff(start_list, end_list);
	
	check_invalid_by_fragid invfrag; // Bit clunky to define both, but easiest to avoid nested try/catch.
	check_invalid_by_dist invdist(chimera_span);
	const check_invalid_chimera* invchim=NULL;
	if (invdist.get_span()==NA_INTEGER) { invchim=&invfrag; } 
	else { invchim=&invdist; }
	
	return internal_loop(&ff, &get_status, invchim,
		pairlen, chrs, pos, flag, cigar, mapqual, chimera_strict, minqual, do_dedup);
} catch (std::exception& e) {
	return mkString(e.what());
}