2
|
1 <tool id="srst2" name="SRST2 - Short Read Sequence Typer (v2)" version="0.2.0">
|
0
|
2 <requirements>
|
2
|
3 <requirement type="package" version="0.2.0">srst2</requirement>
|
0
|
4 </requirements>
|
|
5 <command detect_errors="exit_code"><![CDATA[
|
|
6 #if $paired_conditional.sPaired == "paired"
|
|
7 ln -s $paired_conditional.fastq1 sample_1.fastq;
|
|
8 ln -s $paired_conditional.fastq2 sample_2.fastq;
|
2
|
9 #else if $paired_conditional.sPaired == "paired_coll"
|
|
10 ln -s $paired_conditional.coll.forward sample_1.fastq;
|
|
11 ln -s $paired_conditional.coll.reverse sample_2.fastq;
|
0
|
12 #end if
|
|
13
|
|
14 srst2
|
|
15
|
|
16 #if $paired_conditional.sPaired == "single"
|
|
17 --input_se $paired_conditional.fastq1
|
|
18 #else if $paired_conditional.sPaired == "paired"
|
|
19 --input_pe sample_1.fastq sample_2.fastq
|
2
|
20 #else if $paired_conditional.sPaired == "paired_coll"
|
|
21 --input_pe sample_1.fastq sample_2.fastq
|
0
|
22 #end if
|
|
23
|
|
24 --output srst2out
|
|
25 --save_scores
|
|
26
|
|
27 #if $job_type.job == "mlst"
|
|
28 --mlst_definitions $job_type.mlst_definitions
|
|
29 --mlst_db $job_type.mlst_db
|
|
30 --mlst_delimiter $job_type.mlstdelim
|
|
31 --mlst_max_mismatch $job_type.mlst_max_mismatch
|
|
32 #else if $job_type.job == "gene"
|
|
33 --gene_db $job_type.genedb
|
|
34 --gene_max_mismatch $job_type.gene_max_mismatch
|
2
|
35 #else if $job_type.job == "nost"
|
|
36 --mlst_db $job_type.mlst_db
|
|
37 --mlst_delimiter $job_type.mlstdelim
|
|
38 --mlst_max_mismatch $job_type.mlst_max_mismatch
|
0
|
39 #end if
|
|
40
|
|
41 #if $options.select == "advanced"
|
|
42 #if $options.min_coverage
|
|
43 --min_coverage $options.min_coverage
|
|
44 #end if
|
|
45 #if $options.max_divergence
|
|
46 --max_divergence $options.max_divergence
|
|
47 #end if
|
|
48 #if $options.min_depth
|
|
49 --min_depth $options.min_depth
|
|
50 #end if
|
|
51 #if $options.min_edge_depth
|
|
52 --min_edge_depth $options.min_edge_depth
|
|
53 #end if
|
|
54 #if $options.prob_err
|
|
55 --prob_err $options.prob_err
|
|
56 #end if
|
|
57 #if $options.stop_after
|
|
58 --stop_after $options.stop_after
|
|
59 #end if
|
|
60 --other "'-p \${GALAXY_SLOTS:-1}
|
|
61 #if $options.maxins
|
|
62 --maxins $options.maxins
|
|
63 --minins $options.minins
|
|
64 #end if
|
|
65 '"
|
|
66 #if $options.mapq
|
|
67 --mapq $options.mapq
|
|
68 #end if
|
|
69 #if $options.baseq
|
|
70 --baseq $options.baseq
|
|
71 #end if
|
|
72 #else
|
|
73 --other "'-p \${GALAXY_SLOTS:-1}'"
|
|
74 #end if
|
|
75
|
|
76 #if $job_type.job == "mlst"
|
|
77 ; python $__tool_directory__/scoreProfiles.py --mlst_definitions $job_type.mlst_definitions --profile_cov $job_type.profile_cov --profile_max_mismatch $job_type.profile_max_mismatch --output srst2.pscores
|
|
78 #end if
|
|
79
|
|
80 ]]></command>
|
|
81 <inputs>
|
|
82 <conditional name="paired_conditional">
|
|
83 <param name="sPaired" type="select" label="Single-End or Paired-End FASTQ?">
|
2
|
84 <option value="single">Single FASTQ</option>
|
|
85 <option value="paired">Forward and Reverse FASTQ</option>
|
|
86 <option value="paired_coll">Paired FASTQ Collection</option>
|
0
|
87 </param>
|
|
88 <when value="single">
|
1
|
89 <param name="fastq1" type="data" format="fastq,fastqsanger" label="FASTQ file" help="FASTQ" />
|
0
|
90 </when>
|
|
91 <when value="paired">
|
1
|
92 <param name="fastq1" type="data" format="fastq,fastqsanger" label="Forward FASTQ file" help="FASTQ" />
|
|
93 <param name="fastq2" type="data" format="fastq,fastqsanger" label="Reverse FASTQ file" help="FASTQ" />
|
0
|
94 </when>
|
2
|
95 <when value="paired_coll">
|
|
96 <param name="coll" label="Paired FASTQ" type="data_collection" format="fastq,fastqsanger" collection_type="paired" />
|
|
97 </when>
|
0
|
98 </conditional>
|
|
99
|
|
100 <conditional name="job_type">
|
2
|
101 <param name="job" type="select" label="MLST, MLST with ST, or Gene Presence/Absence?">
|
|
102 <option value="nost">MLST</option>
|
|
103 <option value="mlst">MLST with ST Definitions</option>
|
0
|
104 <option value="gene">Gene</option>
|
|
105 </param>
|
2
|
106 <when value="nost">
|
|
107 <param type="data" name="mlst_db" label="Fasta file of MLST alleles" format="fasta" />
|
|
108 <param type="text" name="mlstdelim" value="_" format="txt" label="Character(s) separating gene name from allele number in MLST database (default '_')" />
|
|
109 <param type="integer" name="mlst_max_mismatch" value="10" format="txt" label="Maximum number of mismatches per read" />
|
|
110 </when>
|
0
|
111 <when value="mlst">
|
|
112 <param type="data" name="mlst_db" label="Fasta file of MLST alleles" format="fasta" />
|
|
113 <param type="data" name="mlst_definitions" label="ST definitions for MLST scheme" format="tabular" />
|
|
114 <param type="text" name="mlstdelim" value="_" format="txt" label="Character(s) separating gene name from allele number in MLST database (default '_')" />
|
|
115 <param type="integer" name="mlst_max_mismatch" value="10" format="txt" label="Maximum number of mismatches per read" />
|
|
116 <param type="float" name="profile_max_mismatch" value="1" format="txt" label="Maximum number of mismatches for reporting ST profile" />
|
|
117 <param type="float" name="profile_cov" value="98" format="txt" label="Minimum mean % coverage for reporting ST profile" />
|
|
118
|
|
119 </when>
|
|
120 <when value="gene">
|
|
121 <param name="genedb" type="data" format="fasta" label="Fasta file for gene database" />
|
|
122 <param name="gene_max_mismatch" type="integer" value="10" format="txt" label="Maximum number of mistaches per read (default 10)" />
|
|
123 </when>
|
|
124 </conditional>
|
|
125
|
|
126 <conditional name="options">
|
|
127 <param name="select" type="select" label="Options Type">
|
|
128 <option value="basic">Basic</option>
|
|
129 <option value="advanced">Advanced</option>
|
|
130 </param>
|
|
131 <when value="advanced">
|
|
132 <param name="min_coverage" type="integer" label="Minimum %coverage cutoff for gene reporting" value="90"/>
|
|
133 <param name="max_divergence" type="integer" label="Maximum %divergence cutoff for gene reporting" value="10"/>
|
|
134 <param name="min_depth" type="integer" label="Minimum mean depth to flag as dubious allele call" value="5"/>
|
|
135 <param name="min_edge_depth" type="integer" label="Minimum edge depth to flag as dubious allele call" value="2"/>
|
|
136 <param name="prob_err" type="float" label="Probability of sequencing error" value="0.01"/>
|
|
137 <param name="stop_after" type="integer" label="Stop mapping after this number of reads have been mapped (otherwise map all)" optional="true"/>
|
|
138 <param name="mapq" type="integer" label="Samtools -q parameter" value="1"/>
|
|
139 <param name="baseq" type="integer" label="Samtools -Q parameter" value="20"/>
|
|
140 <param name="minins" type="integer" label="Bowtie 2 -I parameter. The minimum fragment length for valid paired-end alignments." value="0" >
|
|
141 <validator type="in_range" message="Must be less than -X parameter." min="0"/>
|
|
142 </param>
|
|
143 <param name="maxins" type="integer" label="Bowtie 2 -X parameter. The maximum fragment length for valid paired-end alignments." value="1000" >
|
|
144 <validator type="in_range" message="Must be greater than -I parameter." min="0"/>
|
|
145 </param>
|
|
146 </when>
|
|
147 <when value="basic"/>
|
|
148 </conditional>
|
|
149
|
|
150 </inputs>
|
|
151
|
|
152 <outputs>
|
|
153 <data format="tabular" label="SRST2 Results" name="results" from_work_dir="*.txt"/>
|
|
154 <data format="tabular" label="SRST2 Allele Scores" name="scores" from_work_dir="*.scores">
|
|
155 <filter>job_type['job'] == "mlst"</filter>
|
|
156 </data>
|
|
157 <data format="tabular" label="SRST2 Profile Scores" name="pscores" from_work_dir="*.pscores">
|
|
158 <filter> job_type['job'] == "mlst"</filter>
|
|
159 </data>
|
|
160 <data format="tabular" label="SRST2 Predicted Alleles" name="alleles" from_work_dir="*results.txt">
|
|
161 <filter> job_type['job'] == "mlst"</filter>
|
|
162 </data>
|
|
163 <data format="tabular" label="SRST2 Gene Scores" name="gscores" from_work_dir="*.scores">
|
|
164 <filter>job_type['job'] == "gene"</filter>
|
|
165 </data>
|
|
166 </outputs>
|
|
167
|
|
168 <help><![CDATA[
|
|
169
|
|
170 SRST2 - Short Read Sequence Typer (v2)
|
|
171
|
|
172 This program is designed to take Illumina sequence data, a MLST database and/or a database of gene sequences (e.g. resistance genes, virulence genes, etc) and report the presence of STs and/or reference genes.
|
|
173
|
|
174 ]]></help>
|
|
175
|
|
176
|
|
177 <citations>
|
|
178 <citation type="bibtex">
|
|
179 @misc{pope_dashnow_zobel_holt_raven_schultz_inouye_tomita_2014,
|
|
180 title={SRST2: Rapid genomic surveillance for public health and hospital microbiology labs},
|
|
181 url={https://genomemedicine.biomedcentral.com/articles/10.1186/s13073-014-0090-6},
|
|
182 journal={Genome Medicine}, publisher={BioMed Central},
|
|
183 author={Pope, Bernard J and Dashnow, Harriet and Zobel, Justin and Holt, Kathryn E and Raven, Lesley-Ann and Schultz, Mark B and Inouye, Michael and Tomita, Takehiro},
|
|
184 year={2014}, month={Nov}} ,
|
|
185 }</citation>
|
|
186 </citations>
|
|
187 </tool>
|