0
|
1 <tool name="ReorderSam" id="picard_ReorderSam" version="1.122.0">
|
|
2 <description>reorder reads to match ordering in reference sequences</description>
|
|
3 <requirements><requirement type="package" version="1.122.0">picard</requirement></requirements>
|
|
4
|
|
5 <macros>
|
|
6 <import>picard_macros.xml</import>
|
|
7 </macros>
|
|
8
|
|
9 <command>
|
|
10 @java_options@
|
|
11 #set $picard_dict = "localref.dict"
|
|
12 #set $ref_fasta = "localref.fa" ## This is done because picards "likes" .fa extension
|
|
13
|
|
14 ln -s "${reference_source.ref_file}" "${ref_fasta}" &&
|
|
15
|
|
16 #if str( $reference_source.reference_source_selector ) == "history":
|
|
17
|
|
18 java -jar \$JAVA_JAR_PATH/CreateSequenceDictionary.jar REFERENCE="${ref_fasta}" OUTPUT="${picard_dict}"
|
|
19 QUIET=true
|
|
20 VERBOSITY=ERROR
|
|
21
|
|
22 &&
|
|
23
|
|
24 #else:
|
|
25
|
|
26 #set $ref_fasta = str( $reference_source.ref_file.fields.path )
|
|
27
|
|
28 #end if
|
|
29
|
|
30 java -jar \$JAVA_JAR_PATH/ReorderSam.jar
|
|
31 INPUT="${inputFile}"
|
|
32 OUTPUT="${outFile}"
|
|
33 REFERENCE="${ref_fasta}"
|
|
34 ALLOW_INCOMPLETE_DICT_CONCORDANCE="${allow_incomplete_dict_concordance}"
|
|
35 ALLOW_CONTIG_LENGTH_DISCORDANCE="${allow_contig_length_discordance}"
|
|
36
|
|
37 VALIDATION_STRINGENCY="${validation_stringency}"
|
|
38 QUIET=true
|
|
39 VERBOSITY=ERROR
|
|
40
|
|
41 </command>
|
|
42
|
|
43 <inputs>
|
|
44
|
|
45 <conditional name="reference_source">
|
|
46 <param name="reference_source_selector" type="select" label="Load reference genome from">
|
|
47 <option value="cached">Local cache</option>
|
|
48 <option value="history">History</option>
|
|
49 </param>
|
|
50 <when value="cached">
|
|
51 <param name="ref_file" type="select" label="Use dictionary from the list" help="Select genome from the list">
|
|
52 <options from_data_table="picard_indexes">
|
|
53 <filter type="sort_by" column="2" />
|
|
54 <validator type="no_options" message="No indexes are available" />
|
|
55 </options>
|
|
56 <validator type="no_options" message="A built-in dictionary is not available for the build associated with the selected input file"/>
|
|
57 </param>
|
|
58 </when>
|
|
59 <when value="history">
|
|
60 <param name="ref_file" type="data" format="fasta" label="Use the following dataset to create dictionary" help="You can upload a FASTA sequence to the history from which Picard will automatically generate dictionary using CreateSequenceDictionary command" />
|
|
61 </when>
|
|
62 </conditional>
|
|
63
|
|
64 <param format="sam,bam" name="inputFile" type="data" label="Select SAM/BAM dataset or dataset collection" help="If empty, upload or import a SAM/BAM dataset"/>
|
|
65 <param name="allow_incomplete_dict_concordance" type="boolean" label="If true, then allows only a partial overlap of the BAM contigs with the new reference sequence contigs" help="ALLOW_INCOMPLETE_DICT_CONCORDANCE; By default, this tool requires a corresponding contig in the new reference for each read contig; default=False"/>
|
|
66 <param name="allow_contig_length_discordance" type="boolean" label="If true, then permits mapping from a read contig to a new reference contig with the same name but a different length" help="ALLOW_CONTIG_LENGTH_DISCORDANCE; HIGHLY DANGEROUS! Only use if you know what you are doing; default=False"/>
|
|
67 <expand macro="VS" />
|
|
68
|
|
69 </inputs>
|
|
70 <outputs>
|
|
71 <data name="outFile" format="bam" label="${tool.name} on ${on_string}: Reordered BAM"/>
|
|
72 </outputs>
|
|
73 <tests>
|
|
74 <test>
|
|
75 <param name="reference_source_selector" value="history" />
|
|
76 <param name="ref_file" value="picard_ReorderSam_ref.fa" ftype="fasta" />
|
|
77 <param name="inputFile" value="picard_ReorderSam.bam" ftype="bam"/>
|
|
78 <param name="allow_incomplete_dict_concordance" value="false"/>
|
|
79 <param name="allow_contig_length_discordance" value="false"/>
|
|
80 <output name="outFile" file="picard_ReorderSam_test1.bam" ftype="bam" lines_diff="2"/>
|
|
81 </test>
|
|
82 </tests>
|
|
83
|
|
84 <stdio>
|
|
85 <exit_code range="1:" level="fatal"/>
|
|
86 </stdio>
|
|
87
|
|
88 <help>
|
|
89
|
|
90 .. class:: infomark
|
|
91
|
|
92 **Purpose**
|
|
93
|
|
94 ReorderSam reorders reads in a SAM/BAM file to match the contig ordering in a provided reference file, as determined by exact name matching of contigs. Reads mapped to contigs absent in the new reference are dropped.
|
|
95
|
|
96 @dataset_collections@
|
|
97
|
|
98 ----
|
|
99
|
|
100 .. class:: warningmark
|
|
101
|
|
102 Not to be confused with **SortSam**.
|
|
103
|
|
104 @description@
|
|
105
|
|
106 ALLOW_INCOMPLETE_DICT_CONCORDANCE=Boolean
|
|
107 S=Boolean If true, then allows only a partial overlap of the BAM contigs with the new reference
|
|
108 sequence contigs. By default, this tool requires a corresponding contig in the new
|
|
109 reference for each read contig Default value: false. Possible values: {true, false}
|
|
110
|
|
111 ALLOW_CONTIG_LENGTH_DISCORDANCE=Boolean
|
|
112 U=Boolean If true, then permits mapping from a read contig to a new reference contig with the same
|
|
113 name but a different length. Highly dangerous, only use if you know what you are doing.
|
|
114 Default value: false. Possible values: {true, false}
|
|
115
|
|
116 @more_info@
|
|
117 </help>
|
|
118 </tool>
|
|
119
|
|
120
|
|
121
|
|
122
|
|
123
|
|
124
|
|
125
|
|
126
|
|
127
|
|
128
|
|
129
|
|
130
|
|
131
|