|
3 | 3 | #include <seqan3/std/filesystem> // for filesystem |
4 | 4 | #include <vector> |
5 | 5 |
|
6 | | -#include "method_enums.hpp" // for enum detection_methods, clustering_methods and refinement_methods |
| 6 | +#include "iGenVar.hpp" // for struct cmd_arguments |
7 | 7 | #include "structures/junction.hpp" // for class Junction |
8 | 8 |
|
9 | 9 | /*! \brief Detects junctions between distant genomic positions by analyzing a short read alignment file (sam/bam). The |
10 | 10 | * detected junctions are stored in a vector. |
11 | 11 | * |
12 | 12 | * \param[in, out] junctions - a vector of junctions |
13 | | - * \param[in] alignment_short_reads_file_path - short reads input file, path to the sam/bam file |
14 | | - * \param[in] methods - list of methods for detecting junctions (0: cigar_string, |
15 | | - * 1: split_read, |
16 | | - * 2: read_pairs, |
17 | | - * 3: read_depth) |
18 | | - * \param[in] min_var_length - minimum length of variants to detect (default 30 bp) |
| 13 | + * \param[in] args - command line arguments:\n |
| 14 | + * **args.alignment_short_reads_file_path** - short reads input file, path to the sam/bam file\n |
| 15 | + * **args.methods** - list of methods for detecting junctions |
| 16 | + * (0: cigar_string, 1: split_read, 2: read_pairs, 3: read_depth) - *default: all methods*\n |
| 17 | + * |
19 | 18 | * |
20 | 19 | * \details Detects junctions from the CIGAR strings and supplementary alignment tags of read alignment records. |
21 | 20 | * We filter unmapped alignments, secondary alignments, duplicates and alignments with low mapping quality. |
22 | 21 | * Then, the CIGAR string of all remaining alignments is analyzed. |
23 | 22 | * For primary alignments, also the split read information is analyzed. |
24 | 23 | */ |
25 | 24 | void detect_junctions_in_short_reads_sam_file(std::vector<Junction> & junctions, |
26 | | - std::filesystem::path const & alignment_short_reads_file_path, |
27 | | - std::vector<detection_methods> const & methods, |
28 | | - uint64_t const min_var_length); |
| 25 | + cmd_arguments const & args); |
29 | 26 |
|
30 | 27 | /*! \brief Detects junctions between distant genomic positions by analyzing a long read alignment file (sam/bam). The |
31 | 28 | * detected junctions are stored in a vector. |
32 | 29 | * |
33 | 30 | * \param[in, out] junctions - a vector of junctions |
34 | | - * \param[in] alignment_long_reads_file_path - long reads input file, path to the sam/bam file |
35 | | - * \param[in] methods - list of methods for detecting junctions (0: cigar_string, |
36 | | - * 1: split_read, |
37 | | - * 2: read_pairs, |
38 | | - * 3: read_depth) |
39 | | - * \param[in] min_var_length - minimum length of variants to detect (default 30 bp) |
| 31 | + * \param[in] args - command line arguments:\n |
| 32 | + * **args.alignment_long_reads_file_path** - long reads input file, path to the sam/bam file\n |
| 33 | + * **args.methods** - list of methods for detecting junctions |
| 34 | + * (0: cigar_string, 1: split_read, 2: read_pairs, 3: read_depth) - *default: all methods*\n |
| 35 | + * **args.min_var_length** - minimum length of variants to detect (expected to be non-negative) - *default: 30 bp*\n |
| 36 | + * **args.max_overlap** - maximum overlap between alignment segments (expected to be non-negative) - *default: 10 bp* |
| 37 | + * |
40 | 38 | * |
41 | 39 | * \details Detects junctions from the CIGAR strings and supplementary alignment tags of read alignment records. |
42 | 40 | * We filter unmapped alignments, secondary alignments, duplicates and alignments with low mapping quality. |
43 | 41 | * Then, the CIGAR string of all remaining alignments is analyzed. |
44 | 42 | * For primary alignments, also the split read information is analyzed. |
45 | 43 | */ |
46 | 44 | void detect_junctions_in_long_reads_sam_file(std::vector<Junction> & junctions, |
47 | | - std::filesystem::path const & alignment_long_reads_file_path, |
48 | | - std::vector<detection_methods> const & methods, |
49 | | - uint64_t const min_var_length); |
| 45 | + cmd_arguments const & args); |
0 commit comments