comparison picard_SamToFastq.xml @ 3:52fdfc45590a draft

planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/picard commit 00a7926c285bc4a339bd7deebf40b28f39c7d947-dirty
author devteam
date Thu, 16 Jul 2015 15:32:31 -0400
parents ff4ec13e496e
children 2589e6207cb4
comparison
equal deleted inserted replaced
2:93ace7e49295 3:52fdfc45590a
1 <tool id="picard_SamToFastq" name="SAM to FASTQ" version="1.56.1" force_history_refresh="True"> 1 <tool name="SamToFastq" id="picard_SamToFastq" version="@TOOL_VERSION@.0">
2 <description>creates a FASTQ file</description> 2 <description>extract reads and qualities from SAM/BAM dataset and convert to fastq</description>
3 <requirements><requirement type="package" version="1.56.0">picard</requirement></requirements> 3 <macros>
4 <!-- Dan Blankenberg --> 4 <import>picard_macros.xml</import>
5 <command interpreter="python">picard_SamToFastq_wrapper.py 5 </macros>
6 -p ' 6 <expand macro="requirements" />
7 java -XX:DefaultMaxRAMFraction=1 -XX:+UseParallelGC 7 <command>
8 -jar "\$JAVA_JAR_PATH/SamToFastq.jar" 8
9 INPUT="${input_sam}" 9 echo "BAM" > $report &amp;&amp; ## This is necessary for output dataset detection (see output tags below)
10 VALIDATION_STRINGENCY="LENIENT" 10
11 RE_REVERSE=${re_reverse} 11 @java_options@
12 INCLUDE_NON_PF_READS=${include_non_pf_reads} 12
13 #if str( $clipping_attribute ): 13 java -jar \$JAVA_JAR_PATH/picard.jar
14 CLIPPING_ATTRIBUTE="${clipping_attribute}" 14 SamToFastq
15
16 INPUT="${inputFile}"
17
18 #if str( $output_per_rg ) == "true":
19 OUTPUT_PER_RG=true
20 OUTPUT_DIR=.
21 #elif str( $output_per_rg ) == "false" and str( $interleave ) == "false":
22 FASTQ=READ1.fastq
23 SECOND_END_FASTQ=READ2.fastq
24 UNPAIRED_FASTQ=UNPAIRED_READS.fastq
25 #elif str( $output_per_rg ) == "false" and str( $interleave ) == "true":
26 FASTQ=INTERLEAVED.fastq
15 #end if 27 #end if
16 #if str( $clipping_action ): 28
17 CLIPPING_ACTION="${clipping_action}" 29 RE_REVERSE="${re_reverse}"
30 INTERLEAVE="${interleave}"
31 INCLUDE_NON_PF_READS="${include_non_pf_reads}"
32 CLIPPING_ATTRIBUTE="${clipping_attribute}"
33 CLIPPING_ACTION="${clipping_action}"
34 READ1_TRIM="${read1_trim}"
35
36 #if int($read1_max_bases_to_write) > -1:
37 READ1_MAX_BASES_TO_WRITE="${read1_max_bases_to_write}"
18 #end if 38 #end if
19 #if str( $read1_trim ): 39
20 READ1_TRIM="${read1_trim}" 40 READ2_TRIM="${read2_trim}"
41
42 #if int($read2_max_bases_to_write) > -1:
43 READ2_MAX_BASES_TO_WRITE="${read2_max_bases_to_write}"
21 #end if 44 #end if
22 #if str( $read1_max_bases_to_write ):
23 READ1_MAX_BASES_TO_WRITE="${read1_max_bases_to_write}"
24 #end if
25 INCLUDE_NON_PRIMARY_ALIGNMENTS=${include_non_primary_alignments}
26 45
27 #if str( $output_per_read_group_selector ) == 'per_sam_file': 46 INCLUDE_NON_PRIMARY_ALIGNMENTS="${include_non_primary_alignments}"
28 ##OUTPUT_PER_RG=false 47
29 FASTQ="${output_fastq1}" 48
30 49 VALIDATION_STRINGENCY="${validation_stringency}"
31 #if str( $single_paired_end_type.single_paired_end_type_selector ) == 'paired': 50 QUIET=true
32 SECOND_END_FASTQ="${output_fastq2}" 51 VERBOSITY=ERROR
33 #if str( $single_paired_end_type.read2_trim ): 52
34 READ2_TRIM="${single_paired_end_type.read2_trim}"
35 #end if
36 #if str( $single_paired_end_type.read2_max_bases_to_write ):
37 READ2_MAX_BASES_TO_WRITE="${single_paired_end_type.read2_max_bases_to_write}"
38 #end if
39 #end if
40 '
41 #else:
42 OUTPUT_PER_RG=true
43 #if str( $single_paired_end_type.single_paired_end_type_selector ) == 'paired':
44 '
45 --read_group_file_2 "${output_fastq2}"
46 --file_id_2 "${output_fastq2.id}"
47 -p '
48 #if str( $single_paired_end_type.read2_trim ):
49 READ2_TRIM="${single_paired_end_type.read2_trim}"
50 #end if
51 #if str( $single_paired_end_type.read2_max_bases_to_write ):
52 READ2_MAX_BASES_TO_WRITE="${single_paired_end_type.read2_max_bases_to_write}"
53 #end if
54 #end if
55 '
56 --read_group_file_1 "${output_fastq1}"
57 --new_files_path "${$__new_file_path__}"
58 --file_id_1 "${output_fastq1.id}"
59 #end if
60 </command> 53 </command>
61 <inputs> 54 <inputs>
62 <param name="input_sam" type="data" format="sam,bam" label="BAM/SAM file" />
63 <param name="read1_trim" type="integer" value="" optional="True" label="The number of bases to trim from the beginning of read 1." />
64 <param name="read1_max_bases_to_write" type="integer" optional="True" value="" label="The maximum number of bases to write from read 1 after trimming." />
65 <param name="output_per_read_group_selector" type="select" label="Output per read group">
66 <option value="per_sam_file" selected="True">Per BAM/SAM file</option>
67 <option value="per_read_group">Per Read Group</option>
68 </param>
69 <conditional name="single_paired_end_type">
70 <param name="single_paired_end_type_selector" type="select" label="Single or Paired end">
71 <option value="single" selected="True">Single</option>
72 <option value="paired">Paired end</option>
73 </param>
74 <when value="single">
75 <!-- nothing yet -->
76 </when>
77 <when value="paired">
78 <param name="read2_trim" type="integer" value="" optional="True" label="The number of bases to trim from the beginning of read 2." />
79 <param name="read2_max_bases_to_write" type="integer" optional="True" value="" label="The maximum number of bases to write from read 2 after trimming." />
80 </when>
81 </conditional>
82 <param name="re_reverse" type="boolean" truevalue="true" falsevalue="false" checked="True" label="Re-reverse bases and qualities of reads on negative strand"/>
83 <param name="include_non_pf_reads" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Include non-PF reads from the SAM file into the output FASTQ files."/>
84 <param name="clipping_attribute" type="text" value="" label="The attribute that stores the position at which the SAM record should be clipped" help="Leave blank for null" />
85 <param name="clipping_action" type="text" value="" label="The action that should be taken with clipped reads" help="'X' means the reads and qualities should be trimmed at the clipped position; 'N' means the bases should be changed to Ns in the clipped region; and any integer means that the base qualities should be set to that value in the clipped region. Leave blank for null" />
86 <param name="include_non_primary_alignments" type="boolean" truevalue="true" falsevalue="false" checked="False" label="If true, include non-primary alignments in the output." help="Support of non-primary alignments in SamToFastq is not comprehensive, so there may be exceptions if this is set to true and there are paired reads with non-primary alignments."/>
87 55
88 </inputs> 56 <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"/>
57 <param name="output_per_rg" type="boolean" checked="False" label="Do you want to output a fastq file per read group (two fastq files per read group if the group is paired)" help="OUTPUT_PER_RG; default=False"/>
58 <param name="re_reverse" type="boolean" checked="True" label="Re-reverse bases and qualities of reads with negative strand flag set before writing them to fastq" help="RE_REVERSE; default=True"/>
59 <param name="interleave" type="boolean" label="Will generate an interleaved fastq if paired, each line will have /1 or /2 to describe which end it came from" help="INTERLEAVE; default=False"/>
60 <param name="include_non_pf_reads" type="boolean" label="Include non-PF reads from the SAM/BAM dataset into the output FASTQ" help="INCLUDE_NON_PF_READS; PF means 'passes filtering'. Reads whose 'not passing quality controls' flag is set are non-PF reads; default=False"/>
61 <param name="clipping_attribute" type="text" size="4" value="null" label="The attribute that stores the position at which the SAM/BAM record should be clipped" help="CLIPPING_ATTRIBUTE; default=null"/>
62 <param name="clipping_action" type="text" size="10" value="null" label="The action that should be taken with clipped reads: 'X' means the reads and qualities should be trimmed at the clipped position; 'N' means the bases should be changed to Ns in the clipped region; and any integer means that the base qualities should be set to that value in the clipped region" help="CLIPPING_ACTION; default=null"/>
63 <param name="read1_trim" type="integer" value="0" min="0" label="The number of bases to trim from the beginning of read 1" help="READ1_TRIM; default=0"/>
64 <param name="read1_max_bases_to_write" type="integer" value="-1" label="The maximum number of bases to write from read 1 after trimming" help="READ1_MAX_BASES_TO_WRITE; If there are fewer than this many bases left after trimming, all will be written. If this value is null then all bases left after trimming will be written; default=null (-1)"/>
65 <param name="read2_trim" type="integer" value="0" min="0" label="The number of bases to trim from the beginning of read 2" help="READ2_TRIM; default=0"/>
66 <param name="read2_max_bases_to_write" type="integer" value="-1" label="The maximum number of bases to write from read 2 after trimming" help="READ2_MAX_BASES_TO_WRITE; If there are fewer than this many bases left after trimming, all will be written. If this value is null then all bases left after trimming will be written; default=null (-1)"/>
67 <param name="include_non_primary_alignments" type="boolean" label="If true, include non-primary alignments in the output" help="INCLUDE_NON_PRIMARY_ALIGNMENTS; Support of non-primary alignments in SamToFastq is not comprehensive, so there may be exceptions if this is set to true and there are paired reads with non-primary alignments; default=False"/>
68
69 <expand macro="VS" />
70
71 </inputs>
72
89 <outputs> 73 <outputs>
90 <data format="fastqsanger" name="output_fastq1" label="${tool.name} on ${on_string}: FASTQ 1" /> 74 <!-- here dataset discovery is based on fact that if OUTPUT_PER_RG=true this tool automatically adds .fastq extension to emitted files -->
91 <data format="fastqsanger" name="output_fastq2" label="${tool.name} on ${on_string}: FASTQ 2" > 75 <data format="txt" name="report" label="SamToFastq run" hidden="true">
92 <filter>single_paired_end_type['single_paired_end_type_selector'] == 'paired'</filter> 76 <discover_datasets pattern="(?P&lt;designation&gt;.+)\.fastq" ext="fastqsanger" visible="true"/>
93 </data> 77 </data>
94 </outputs> 78 </outputs>
79
95 <tests> 80 <tests>
96 <test> 81 <test>
97 <param name="input_sam" value="bfast_out1.sam" ftype="sam" /> 82 <param name="inputFile" value="picard_SamToFastq.bam" ftype="bam"/>
98 <param name="output_per_read_group_selector" value="per_sam_file" /> 83 <param name="output_per_rg" value="false"/>
99 <param name="single_paired_end_type_selector" value="single" /> 84 <param name="re_reverse" value="true"/>
100 <param name="read1_trim" value="" /> 85 <param name="interleave" value="true"/>
101 <param name="read1_max_bases_to_write" value="" /> 86 <param name="include_non_pf_reads" value="false"/>
102 <param name="re_reverse" value="True" /> 87 <param name="clipping_attribute" value="null" />
103 <param name="include_non_pf_reads" value="False" /> 88 <param name="clipping_action" value="null" />
104 <param name="clipping_action" value="" /> 89 <param name="read1_trim" value="0" />
105 <param name="clipping_attribute" value="" /> 90 <param name="read1_max_bases_to_write" value="-1"/>
106 <param name="include_non_primary_alignments" value="False" /> 91 <param name="read2_trim" value="0" />
107 <output name="output_fastq1" file="random_phiX_1.fastqsanger"/> 92 <param name="read2_max_bases_to_write" value="-1"/>
108 </test> 93 <param name="include_non_primary_alignments" value="false"/>
109 <test> 94 <output name="report">
110 <param name="input_sam" value="bwa_wrapper_out3.sam" ftype="sam" /> 95 <assert_contents>
111 <param name="output_per_read_group_selector" value="per_sam_file" /> 96 <has_line line="BAM" />
112 <param name="single_paired_end_type_selector" value="paired" /> 97 </assert_contents>
113 <param name="read1_trim" value="" /> 98 <discovered_dataset designation="INTERLEAVED" file="picard_SamToFastq_test1.fq" ftype="fastqsanger"/>
114 <param name="read1_max_bases_to_write" value="" /> 99 </output>
115 <param name="read2_trim" value="" /> 100 </test>
116 <param name="read2_max_bases_to_write" value="" />
117 <param name="re_reverse" value="True" />
118 <param name="include_non_pf_reads" value="False" />
119 <param name="clipping_action" value="" />
120 <param name="clipping_attribute" value="" />
121 <param name="include_non_primary_alignments" value="False" />
122 <output name="output_fastq1" file="bwa_wrapper_in2.fastqsanger" lines_diff="64"/> <!-- 16 unaligned fastq blocks not present in original sam file -->
123 <output name="output_fastq2" file="bwa_wrapper_in3.fastqsanger" lines_diff="64"/> <!-- 16 unaligned fastq blocks not present in original sam file -->
124 </test>
125 <test>
126 <param name="input_sam" value="bwa_wrapper_out3.sam" ftype="sam" />
127 <param name="output_per_read_group_selector" value="per_read_group" />
128 <param name="single_paired_end_type_selector" value="paired" />
129 <param name="read1_trim" value="" />
130 <param name="read1_max_bases_to_write" value="" />
131 <param name="read2_trim" value="" />
132 <param name="read2_max_bases_to_write" value="" />
133 <param name="re_reverse" value="True" />
134 <param name="include_non_pf_reads" value="False" />
135 <param name="clipping_action" value="" />
136 <param name="clipping_attribute" value="" />
137 <param name="include_non_primary_alignments" value="False" />
138 <output name="output_fastq1" file="bwa_wrapper_in2.fastqsanger" lines_diff="64"/> <!-- 16 unaligned fastq blocks not present in original sam file -->
139 <output name="output_fastq2" file="bwa_wrapper_in3.fastqsanger" lines_diff="64"/> <!-- 16 unaligned fastq blocks not present in original sam file -->
140 </test>
141 </tests> 101 </tests>
102
103 <stdio>
104 <exit_code range="1:" level="fatal"/>
105 </stdio>
106
142 <help> 107 <help>
143 **What it does**
144 108
145 Picard: SamToFastq converts SAM files to FASTQ files. 109 **Purpose**
146 110
147 Extracts read sequences and qualities from the input SAM/BAM file and writes them into the output file in Sanger fastq format. In the RC mode (default is True), if the read is aligned and the alignment is to the reverse strand on the genome, the read's sequence from input SAM file will be reverse-complemented prior to writing it to fastq in order restore correctly the original read sequence as it was generated by the sequencer. 111 Extracts read sequences and qualities from the input SAM/BAM dataset and outputs them in Sanger fastq format. In the RE_REVERSE=True mode (default behavior), if the read is aligned and the alignment is to the reverse strand on the genome, the read's sequence from input SAM.BAM dataset will be reverse-complemented prior to writing it to fastq in order restore correctly the original read sequence as it was generated by the sequencer.
148 112
149 ------ 113 -----
150 114
151 Please cite the website "http://picard.sourceforge.net". 115 .. class:: warningmark
152 116
153 ------ 117 **DANGER: Multiple Outputs**
154 118
119 Generating per readgroup fastq (setting **OUTPUT_PER_RG** to True) may produce very large numbers of outputs. Know what you are doing!
155 120
156 **Input formats** 121 @dataset_collections@
157 122
158 FastqToSam accepts SAM input files, see http://samtools.sourceforge.net for more details. 123 @description@
159 124
160 ------ 125 FASTQ=File
161 126 F=File Output fastq file (single-end fastq or, if paired, first end of the pair fastq).
162 **Outputs** 127 Required. Cannot be used in conjuction with option(s) OUTPUT_PER_RG (OPRG)
163
164 The output is in FASTQ format. If using Paired end data, 2 fastq files are created.
165
166 -------
167
168 **FastqToSam settings**
169
170 This is list of SamToFastq options::
171 128
172 INPUT=File Input SAM/BAM file to extract reads from Required. 129 SECOND_END_FASTQ=File
173 FASTQ=File Output fastq file (single-end fastq or, if paired, first end of the pair fastq). Required. Cannot be used in conjuction with option(s) OUTPUT_PER_RG (OPRG) 130 F2=File Output fastq file (if paired, second end of the pair fastq). Default value: null.
174 SECOND_END_FASTQ=File Output fastq file (if paired, second end of the pair fastq). Default value: null. Cannot be used in conjuction with option(s) OUTPUT_PER_RG (OPRG) 131 Cannot be used in conjuction with option(s) OUTPUT_PER_RG (OPRG)
175 OUTPUT_PER_RG=Boolean Output a fastq file per read group (two fastq files per read group if the group is paired). Default value: false. This option can be set to 'null' to clear the default value. Possible values: {true, false} Cannot be used in conjuction with option(s) SECOND_END_FASTQ (F2) FASTQ (F) 132
176 OUTPUT_DIR=File Directory in which to output the fastq file(s). Used only when OUTPUT_PER_RG is true. Default value: null. 133 UNPAIRED_FASTQ=File
177 RE_REVERSE=Boolean Re-reverse bases and qualities of reads with negative strand flag set before writing them to fastq Default value: true. This option can be set to 'null' to clear the default value. Possible values: {true, false} 134 FU=File Output fastq file for unpaired reads; may only be provided in paired-fastq mode Default
178 INCLUDE_NON_PF_READS=Boolean Include non-PF reads from the SAM file into the output FASTQ files. Default value: false. This option can be set to 'null' to clear the default value. Possible values: {true, false} 135 value: null. Cannot be used in conjuction with option(s) OUTPUT_PER_RG (OPRG)
179 CLIPPING_ATTRIBUTE=String The attribute that stores the position at which the SAM record should be clipped Default value: null. 136
180 CLIPPING_ACTION=String The action that should be taken with clipped reads: 'X' means the reads and qualities should be trimmed at the clipped position; 'N' means the bases should be changed to Ns in the clipped region; and any integer means that the base qualities should be set to that value in the clipped region. Default value: null. 137 OUTPUT_PER_RG=Boolean
181 READ1_TRIM=Integer The number of bases to trim from the beginning of read 1. Default value: 0. This option can be set to 'null' to clear the default value. 138 OPRG=Boolean Output a fastq file per read group (two fastq files per read group if the group is
182 READ1_MAX_BASES_TO_WRITE=Integer The maximum number of bases to write from read 1 after trimming. If there are fewer than this many bases left after trimming, all will be written. If this value is null then all bases left after trimming will be written. Default value: null. 139 paired). Default value: false. Possible values: {true, false} Cannot be used in
183 READ2_TRIM=Integer The number of bases to trim from the beginning of read 2. Default value: 0. This option can be set to 'null' to clear the default value. 140 conjuction with option(s) SECOND_END_FASTQ (F2) UNPAIRED_FASTQ (FU) FASTQ (F)
184 READ2_MAX_BASES_TO_WRITE=Integer The maximum number of bases to write from read 2 after trimming. If there are fewer than this many bases left after trimming, all will be written. If this value is null then all bases left after trimming will be written. Default value: null. 141
185 INCLUDE_NON_PRIMARY_ALIGNMENTS=Boolean If true, include non-primary alignments in the output. Support of non-primary alignments in SamToFastq is not comprehensive, so there may be exceptions if this is set to true and there are paired reads with non-primary alignments. Default value: false. This option can be set to 'null' to clear the default value. Possible values: {true, false} 142 OUTPUT_DIR=File
186 143 ODIR=File Directory in which to output the fastq file(s). Used only when OUTPUT_PER_RG is true.
144 Default value: null.
145
146 RE_REVERSE=Boolean
147 RC=Boolean Re-reverse bases and qualities of reads with negative strand flag set before writing them
148 to fastq Default value: true. Possible values: {true, false}
149
150 INTERLEAVE=Boolean
151 INTER=Boolean Will generate an interleaved fastq if paired, each line will have /1 or /2 to describe
152 which end it came from Default value: false. Possible values: {true, false}
153
154 INCLUDE_NON_PF_READS=Boolean
155 NON_PF=Boolean Include non-PF reads from the SAM file into the output FASTQ files. PF means 'passes
156 filtering'. Reads whose 'not passing quality controls' flag is set are non-PF reads.
157 Default value: false. Possible values: {true, false}
158
159 CLIPPING_ATTRIBUTE=String
160 CLIP_ATTR=String The attribute that stores the position at which the SAM record should be clipped Default
161 value: null.
162
163 CLIPPING_ACTION=String
164 CLIP_ACT=String The action that should be taken with clipped reads: 'X' means the reads and qualities
165 should be trimmed at the clipped position; 'N' means the bases should be changed to Ns in
166 the clipped region; and any integer means that the base qualities should be set to that
167 value in the clipped region. Default value: null.
168
169 READ1_TRIM=Integer
170 R1_TRIM=Integer The number of bases to trim from the beginning of read 1. Default value: 0.
171
172 READ1_MAX_BASES_TO_WRITE=Integer
173 R1_MAX_BASES=Integer The maximum number of bases to write from read 1 after trimming. If there are fewer than
174 this many bases left after trimming, all will be written. If this value is null then all
175 bases left after trimming will be written. Default value: null.
176
177 READ2_TRIM=Integer
178 R2_TRIM=Integer The number of bases to trim from the beginning of read 2. Default value: 0.
179
180 READ2_MAX_BASES_TO_WRITE=Integer
181 R2_MAX_BASES=Integer The maximum number of bases to write from read 2 after trimming. If there are fewer than
182 this many bases left after trimming, all will be written. If this value is null then all
183 bases left after trimming will be written. Default value: null.
184
185 INCLUDE_NON_PRIMARY_ALIGNMENTS=Boolean
186 If true, include non-primary alignments in the output. Support of non-primary alignments
187 in SamToFastq is not comprehensive, so there may be exceptions if this is set to true and
188 there are paired reads with non-primary alignments. Default value: false.
189 Possible values: {true, false}
190
191 @more_info@
187 192
188 </help> 193 </help>
189 </tool> 194 </tool>
195
196