comparison QDNAseq.xml @ 23:4943308e95fc draft

Uploaded
author stef
date Wed, 04 Mar 2015 08:36:24 -0500
parents ff41a875ac60
children ab1ab10c68af
comparison
equal deleted inserted replaced
22:ff41a875ac60 23:4943308e95fc
1 <tool id="QDNAseq" name="QDNAseq" version="0.0.2" force_history_refresh="True"> 1 <tool id="QDNAseq" name="QDNAseq" version="1.0.0" force_history_refresh="True">
2 2
3 <requirements> 3 <requirements>
4 4
5 <requirement type="package" version="0.1.18">samtools</requirement>
6 <!-- R 3.1.0 dependency will be used instead when available, now default R is used, see command -->
5 <!-- <requirement type="package" version="3.1.0">R</requirement> --> 7 <!-- <requirement type="package" version="3.1.0">R</requirement> -->
6 <requirement type="package" version="0.1.18">samtools</requirement> 8 <!-- <requirement type="package" version="1.2.2">qdnaseq</requirement> -->
7 <requirement type="package" version="3.1.1">R_3_1_1</requirement>
8 <requirement type="package" version="1.0.5">qdnaseq</requirement>
9 <requirement type="set_environment">QDNASEQ_PATH</requirement> 9 <requirement type="set_environment">QDNASEQ_PATH</requirement>
10 10
11 </requirements> 11 </requirements>
12 12
13 <description>Quantitative copy number abberation detection</description> 13 <description>Quantitative copy number abberation detection</description>
14 14
15 <!-- change to /full/path/to/Rscript if required (eg /ccagc/lib/R/R-3.1.0/bin/Rscript) --> 15 <!-- change to /full/path/to/Rscript if required (eg /ccagc/lib/R/R-3.1.0/bin/Rscript) -->
16 <command interpreter="Rscript"> 16 <command interpreter="Rscript">
17 QDNAseq.R 17 QDNAseq.R
18 $qdnaseq_cfg \$QDNASEQ_PATH 18 $qdnaseq_cfg
19 <!-- NOTE: dont forget to change to \$QDNASEQ_PATH after local testing -->
20 /home/stef/data/galaxy/galaxy-dist/tools/QDNAseqNew/
19 </command> 21 </command>
20 22
21 <stdio> 23 <stdio>
22 <!-- Anything higher than 0 means the R script didnt finish (correctly) --> 24 <!-- Anything higher than 0 means the R script didnt finish (correctly) -->
23 <!-- Because different R packages deal with err/warn differently unable to waterproof this --> 25 <!-- Because different R packages deal with err/warn differently unable to waterproof this -->
24 <exit_code range="1:" level="fatal" description="R script didnt finish correctly, check log" /> 26 <exit_code range="1:" level="fatal" description="R script finished too early, check log" />
25 </stdio> 27 </stdio>
26 28
27 <inputs> 29 <inputs>
28 30
29 <!-- ==================== --> 31 <!-- ==================== -->
31 <!-- ==================== --> 33 <!-- ==================== -->
32 34
33 <!-- Job name: must contain non-whitespace chars --> 35 <!-- Job name: must contain non-whitespace chars -->
34 <param name="jobName" type="text" optional="false" label="Analysis/ouput name" help="Supply a name for the outputs to remind you what they contain" value="TEST"> 36 <param name="jobName" type="text" optional="false" label="Analysis/ouput name" help="Supply a name for the outputs to remind you what they contain" value="TEST">
35 <validator type="empty_field" /> 37 <validator type="empty_field" />
36 <validator type="regex" message="This field should contain some non-whitespace character">.*\S</validator> 38 <validator type="regex" message="No whitespace characters allowed">^[^\s\\]+$</validator>
37 </param> 39 </param>
38 40
39 <!-- Bin Size: only certain sizes are supported by QDNAseq package --> 41 <!-- Bin Size: only certain sizes are supported by QDNAseq package -->
40 <param name="binSizes" type="select" optional="false" multiple="true" label="Select bin-sizes to use (kb)" help="Larger bin sizes provide faster analysis but lower resolution"> 42 <param name="binSizes" type="select" display="checkboxes" optional="false" multiple="true" label="Select bin-sizes to use (kb)" help="Larger bin sizes provide faster analysis but lower resolution. NOTE: BAM files are traversed again for each binsize, so selecting multiple bin-sizes takes extra analysis time!">
41 <option value="1000" selected="true">1Mb</option> 43 <option value="bin1000kb">1Mb</option>
42 <option value="100" selected="true">100kb</option> 44 <option value="bin100kb">100kb</option>
43 <option value="30">30kb</option> 45 <option value="bin30kb">30kb</option>
44 <option value="15" selected="true">15kb</option> 46 <option value="bin15kb" selected="true">15kb</option>
45 <option value="5">5kb</option> 47 <option value="bin5kb">5kb</option>
46 <option value="1">1kb</option> 48 <option value="bin1kb">1kb</option>
47 </param> 49 </param>
48 50
49 <!-- Experiment type: only one type (SR50) supported now, maybe more in the future--> 51 <!-- Experiment type: only one type (SR50) supported now, maybe more in the future-->
50 <param name="experimentType" type="select" label="Type of sequencing data" help="Currently only single end reads of lenght 50 are supported within galaxy"> 52 <param name="experimentType" type="select" label="Type of sequencing data" help="Currently only single end reads of lenght 50 are supported within galaxy">
51 <option value="SR50">Single Reads of 50bp</option> 53 <option value="SR50">Single Reads of 50bp</option>
56 <!-- Input BAMs --> 58 <!-- Input BAMs -->
57 <!-- ==================== --> 59 <!-- ==================== -->
58 <param name="bams" type="data" multiple="true" optional="True" format="bam" label="Input BAMs" help="Select the BAM files to analyze" /> 60 <param name="bams" type="data" multiple="true" optional="True" format="bam" label="Input BAMs" help="Select the BAM files to analyze" />
59 61
60 <!-- ==================== --> 62 <!-- ==================== -->
61 <!-- Optional segmenting --> 63 <!-- Optional segmenting step -->
62 <!-- ==================== --> 64 <!-- ==================== -->
63 <param name="doSegment" type="select" label="Also perform segmentation" help="Segmentation collects bins with similar ratio into regions"> 65 <param name="doSegment" type="select" label="Also perform segmentation" help="Segmentation collects bins with similar ratio into regions">
64 <option value="TRUE">yes</option> 66 <option value="FALSE">no</option>
65 <option value="FALSE">no</option> 67 <option value="TRUE">yes</option>
68 </param>
69
70 <!-- ==================== -->
71 <!-- Optional calling step -->
72 <!-- ==================== -->
73 <param name="doCall" type="select" label="Also perform calling" help="Calling tries to determine a state for each segment (GAIN, LOSS, etc)">
74 <option value="FALSE">no</option>
75 <option value="TRUE">yes</option>
76 </param>
77
78 <!-- ==================== -->
79 <!-- Optional hisotry output: copynumber TXT file -->
80 <!-- ==================== -->
81 <param name="txt2history" type="select" label="Also output copynumber TXT file to history">
82 <option value="FALSE">no</option>
83 <option value="TRUE">yes</option>
84 </param>
85
86 <!-- ==================== -->
87 <!-- Optional history output: R object RDS file -->
88 <!-- ==================== -->
89 <param name="rds2history" type="select" label="Also output copynumber RDS files to history">
90 <option value="FALSE">no</option>
91 <option value="TRUE">yes</option>
66 </param> 92 </param>
67 93
68 <!-- ==================== --> 94 <!-- ==================== -->
69 <!-- Option to use your own bin annotations file --> 95 <!-- Option to use your own bin annotations file -->
70 <!-- ==================== --> 96 <!-- ==================== -->
97 <!-- NOT IN USE YET -->
98 <!--
71 <conditional name="binannotations_source"> 99 <conditional name="binannotations_source">
72 <param name="show" type="select" label="Bin annotations to use" help="Default bin-annotations are for GRCh37/hg19 and tuned for 50bp reads (single end)"> 100 <param name="show" type="select" label="Bin annotations to use" help="Default bin-annotations are for GRCh37/hg19 and tuned for 50bp reads (single end)">
73 <option value="default">Default</option> 101 <option value="default">Default</option>
74 <option value="history">From history</option> 102 <option value="history">From history</option>
75 </param> 103 </param>
79 <when value="default"> 107 <when value="default">
80 <param name="binannotation_file" type="hidden" value="" /> 108 <param name="binannotation_file" type="hidden" value="" />
81 </when> 109 </when>
82 110
83 </conditional> 111 </conditional>
112 -->
84 113
85 <!-- ==================== --> 114 <!-- ==================== -->
86 <!-- Optional advanced options --> 115 <!-- Optional advanced options -->
87 <!-- ==================== --> 116 <!-- ==================== -->
88 <conditional name="advanced"> 117 <conditional name="advanced">
89 <param name="show" type="select" label="Use advanced options" help="Select yes to show and use filter and output options"> 118 <param name="show" type="select" label="Use advanced options" help="Select yes to show and use filter and output options">
90 <option value="no">no</option> 119 <option value="no">no</option>
91 <option value="yes">yes</option> 120 <option value="yes">yes</option>
92 </param> 121 </param>
93 <when value="yes"> 122 <when value="yes">
94
95 <param name="copynumbers_igv" type="select" label="Also output copynumber IGV file to history">
96 <option value="FALSE">no</option>
97 <option value="TRUE">yes</option>
98 </param>
99 123
100 <param name="undo_splits" type="select" label="undoSplits" help="If set to sdundo, see undoSD below"> 124 <param name="undo_splits" type="select" label="undoSplits" help="If set to sdundo, see undoSD below">
101 <option value="sdundo">sdundo</option> 125 <option value="sdundo">sdundo</option>
102 <option value="prune">prune</option> 126 <option value="prune">prune</option>
103 <option value="none">none</option> 127 <option value="none">none</option>
134 </param> 158 </param>
135 </when> 159 </when>
136 160
137 <!-- need to set defaults because params are passed to R regardless of conditional opened/closed --> 161 <!-- need to set defaults because params are passed to R regardless of conditional opened/closed -->
138 <when value="no"> 162 <when value="no">
139 <param name="copynumbers_igv" type="hidden" value="FALSE" />
140 <param name="undoSD" type="hidden" value="1" /> 163 <param name="undoSD" type="hidden" value="1" />
141 <param name="undo_splits" type="hidden" value="sdundo" /> 164 <param name="undo_splits" type="hidden" value="sdundo" />
142 <param name="blacklist" type="hidden" value="TRUE" /> 165 <param name="blacklist" type="hidden" value="TRUE" />
143 <param name="mappability" type="hidden" value="0" /> 166 <param name="mappability" type="hidden" value="0" />
144 <param name="plot_width" type="hidden" value="1440" /> 167 <param name="plot_width" type="hidden" value="1440" />
159 <!-- ==================== --> 182 <!-- ==================== -->
160 <!-- Config file to pass params to R script --> 183 <!-- Config file to pass params to R script -->
161 <!-- ==================== --> 184 <!-- ==================== -->
162 <configfiles> 185 <configfiles>
163 <configfile name="qdnaseq_cfg"> 186 <configfile name="qdnaseq_cfg">
164 ## Desc: this file was sourced in QDNAseq R wrapper script 187 ## Desc: this file is sourced in QDNAseq R wrapper script
165 ## as means to pass all galaxy params to R 188 ## as means to pass all galaxy params to R
166 189
167 ## ----- 190 ## -----
168 ## required params 191 ## required params
169 ## ----- 192 ## -----
177 ## ----- 200 ## -----
178 "${htmlFile}" -> outputHtml 201 "${htmlFile}" -> outputHtml
179 "${htmlFile.id}" -> outputId 202 "${htmlFile.id}" -> outputId
180 "${__new_file_path__}" -> newFilePath 203 "${__new_file_path__}" -> newFilePath
181 204
205 list() -> historyOutputFiles
206
207 "${txt_1}" -> historyOutputFiles[[ 'txt_1' ]]
208 "${txt_5}" -> historyOutputFiles[[ 'txt_5' ]]
209 "${txt_15}" -> historyOutputFiles[[ 'txt_15' ]]
210 "${txt_30}" -> historyOutputFiles[[ 'txt_30' ]]
211 "${txt_100}" -> historyOutputFiles[[ 'txt_100' ]]
212 "${txt_1000}" -> historyOutputFiles[[ 'txt_1000' ]]
213
214 "${rds_1}" -> historyOutputFiles[[ 'rds_1' ]]
215 "${rds_5}" -> historyOutputFiles[[ 'rds_5' ]]
216 "${rds_15}" -> historyOutputFiles[[ 'rds_15' ]]
217 "${rds_30}" -> historyOutputFiles[[ 'rds_30' ]]
218 "${rds_100}" -> historyOutputFiles[[ 'rds_100' ]]
219 "${rds_1000}" -> historyOutputFiles[[ 'rds_1000' ]]
220
221
182 "${htmlFile.files_path}" -> outputPath 222 "${htmlFile.files_path}" -> outputPath
183 as.logical( "${doSegment}" ) -> doSegment 223 as.logical( "${doSegment}" ) -> doSegment
224 as.logical( "${doCall}" ) -> doCall
184 as.logical( "${debug}" ) -> debug 225 as.logical( "${debug}" ) -> debug
185 226
186 ## ----- 227 ## -----
187 ## own bin-annotations file options 228 ## own bin-annotations file options
188 ## ----- 229 ## -----
230 <!--
189 "${binannotations_source.binannotation_file}" -> binAnnotations 231 "${binannotations_source.binannotation_file}" -> binAnnotations
232 -->
190 233
191 ## ----- 234 ## -----
192 ## advanced options 235 ## advanced options
193 ## ----- 236 ## -----
194 as.double( "${advanced.undoSD}" ) -> undoSD 237 as.double( "${advanced.undoSD}" ) -> undoSD
195 as.logical( "${advanced.blacklist}" ) -> filterBlacklistedBins 238 as.logical( "${advanced.blacklist}" ) -> filterBlacklistedBins
196 as.integer( "${advanced.mappability}" ) -> mappabilityCutoff 239 as.integer( "${advanced.mappability}" ) -> mappabilityCutoff
197 "${advanced.undo_splits}" -> undoSplits 240 "${advanced.undo_splits}" -> undoSplits
198 as.logical( "${advanced.copynumbers_igv}" ) -> doOutputCopynumbersIgv 241 as.logical( "${txt2history}" ) -> txt2history
199 242 as.logical( "${rds2history}" ) -> rds2history
200 ## #for binSize in $binSizes}.split(",")#
201 ## "${binSize}kbp_${igvCopyNumbers}" -> copyNumbersIgvDatasetFile
202 ## #end for
203 243
204 ## ----- 244 ## -----
205 ## plot options 245 ## plot options
206 ## ----- 246 ## -----
207 as.integer( "${advanced.plot_width}" ) -> PLOT_WIDTH 247 as.integer( "${advanced.plot_width}" ) -> PLOT_WIDTH
227 <!-- ==================== --> 267 <!-- ==================== -->
228 <outputs> 268 <outputs>
229 269
230 <!-- main output is a html report --> 270 <!-- main output is a html report -->
231 <!-- ...but there can be more outputs using the id of the htmlFile output --> 271 <!-- ...but there can be more outputs using the id of the htmlFile output -->
232 <data format="html" name="htmlFile" label="QDNAseq: ${jobName}" /> 272
273 <data format="html" name="htmlFile" label="QDNAseq: ${jobName} report" />
274
275 <!-- WHY does there seem to be no way to use split() within this code in galaxy!!! -->
276 <!-- now have to fall back to using unique names within binSizes instead of just integers -->
277 <!-- Problem with integers is that both "1" and "5" are also present in eg "15,100" -->
278 <data format="tsv" name="txt_1000" label="QDNAseq: ${jobName} txt 1000kb">
279 <filter>( "bin1000kb" in binSizes and txt2history == 'TRUE')</filter>
280 </data>
281 <data format="tsv" name="txt_100" label="QDNAseq: ${jobName} txt 100kb">
282 <filter>("bin100kb" in binSizes and txt2history == 'TRUE')</filter>
283 </data>
284 <data format="tsv" name="txt_30" label="QDNAseq: ${jobName} txt 30kb">
285 <filter>("bin30kb" in binSizes and txt2history == 'TRUE')</filter>
286 </data>
287 <data format="tsv" name="txt_15" label="QDNAseq: ${jobName} txt 15kb">
288 <filter>("bin15kb" in binSizes and txt2history == 'TRUE')</filter>
289 </data>
290 <data format="tsv" name="txt_5" label="QDNAseq: ${jobName} txt 5kb">
291 <filter>("bin5kb" in binSizes and txt2history == 'TRUE')</filter>
292 </data>
293 <data format="tsv" name="txt_1" label="QDNAseq: ${jobName} txt 1kb">
294 <filter>("bin1kb" in binSizes and txt2history == 'TRUE')</filter>
295 </data>
296
297 <data format="rds" name="rds_1000" label="QDNAseq: ${jobName} rds 1000kb">
298 <filter>( "bin1000kb" in binSizes and rds2history == 'TRUE')</filter>
299 </data>
300 <data format="rds" name="rds_100" label="QDNAseq: ${jobName} rds 100kb">
301 <filter>( "bin100kb" in binSizes and rds2history == 'TRUE')</filter>
302 </data>
303 <data format="rds" name="rds_30" label="QDNAseq: ${jobName} rds 30kb">
304 <filter>( "bin30kb" in binSizes and rds2history == 'TRUE')</filter>
305 </data>
306 <data format="rds" name="rds_15" label="QDNAseq: ${jobName} rds 15kb">
307 <filter>( "bin15kb" in binSizes and rds2history == 'TRUE')</filter>
308 </data>
309 <data format="rds" name="rds_5" label="QDNAseq: ${jobName} rds 5kb">
310 <filter>( "bin5kb" in binSizes and rds2history == 'TRUE')</filter>
311 </data>
312 <data format="rds" name="rds_1" label="QDNAseq: ${jobName} rds 1kb">
313 <filter>( "bin1kb" in binSizes and rds2history == 'TRUE')</filter>
314 </data>
233 315
234 </outputs> 316 </outputs>
235 317
236 <!-- ==================== --> 318 <!-- ==================== -->
237 <!-- Tests still to be done --> 319 <!-- Tests still to be done -->