10
|
1 <macros>
|
|
2 <token name="@VERSION@">2.2.1</token>
|
|
3 <xml name="requirements">
|
|
4 <requirements>
|
|
5 <requirement type="package" version="2.2.1">cufflinks</requirement>
|
|
6 <yield />
|
|
7 </requirements>
|
|
8 </xml>
|
|
9 <xml name="stdio">
|
|
10 <stdio>
|
|
11 <exit_code range="1:" />
|
|
12 <exit_code range=":-1" />
|
|
13 <regex match="Error:" />
|
|
14 <regex match="Exception:" />
|
|
15 </stdio>
|
|
16 </xml>
|
|
17 <xml name="condition_inputs">
|
|
18 <!-- DEFAULT : use BAM/SAM files -->
|
|
19 <conditional name="in_type">
|
|
20 <param name="set_in_type" type="select" label="Input data type"
|
|
21 help="CuffNorm supports either CXB (from cuffquant) or SAM/BAM input files. Mixing is not supported. Default: SAM/BAM">
|
|
22 <option value="BAM">SAM/BAM</option>
|
|
23 <option value="CXB">Cuffquant (CXB)</option>
|
|
24 <option value="CONDITION_LIST">List of single replicate conditions</option>
|
|
25 <option value="CONDITION_REPLICATE_LIST">List of multiple replicate conditions</option>
|
|
26 </param>
|
|
27 <when value="BAM">
|
|
28 <repeat name="conditions" title="Condition" min="2">
|
|
29 <param name="name" title="Condition name" type="text" label="Name"/>
|
|
30 <param name="samples" label="Replicates" type="data" format="sam,bam" multiple="true"/>
|
|
31 </repeat>
|
|
32 </when>
|
|
33 <when value="CXB">
|
|
34 <repeat name="conditions" title="Condition" min="2">
|
|
35 <param name="name" title="Condition name" type="text" label="Name"/>
|
|
36 <param name="samples" label="Replicates" type="data" format="cxb" multiple="true"/>
|
|
37 </repeat>
|
|
38 </when>
|
|
39 <when value="CONDITION_LIST">
|
|
40 <param name="conditions" title="List of Conditions" type="data_collection" collection_type="list" />
|
|
41 </when>
|
|
42 <when value="CONDITION_REPLICATE_LIST">
|
|
43 <param name="conditions" title="List of Conditions" type="data_collection" collection_type="list:list" />
|
|
44 </when>
|
|
45 </conditional>
|
|
46 </xml>
|
|
47 <token name="@CONDITION_SAMPLES@">
|
|
48 #if $in_type.set_in_type in ['BAM', 'CXB']
|
|
49 #for $condition in $in_type.conditions:
|
|
50 #set samples = ','.join( [ str( $sample ) for $sample in $condition.samples ] )
|
|
51 $samples
|
|
52 #end for
|
|
53 #elif $in_type.set_in_type == 'CONDITION_LIST'
|
|
54 #for $sample in $in_type.conditions:
|
|
55 $sample
|
|
56 #end for
|
|
57 #elif $in_type.set_in_type == 'CONDITION_REPLICATE_LIST'
|
|
58 #for $condition_list in $in_type.conditions:
|
|
59 #set samples = ','.join( [ str( $sample ) for $sample in $condition_list ] )
|
|
60 $samples
|
|
61 #end for
|
|
62 #end if
|
|
63 </token>
|
|
64 <token name="@CONDITION_LABELS@">
|
|
65 #import re
|
|
66 #if $in_type.set_in_type in ['BAM', 'CXB']
|
|
67 #set labels = '\'' + '\',\''.join( [ str( $condition.name ) for $condition in $in_type.conditions ] ) + '\''
|
|
68 #elif $in_type.set_in_type in ['CONDITION_LIST', 'CONDITION_REPLICATE_LIST']
|
|
69 #set labels = '\'' + '\',\''.join( map(lambda x: re.sub('[^\w\-_]', '_', x), $in_type.conditions.keys() ) ) + '\''
|
|
70 #end if
|
|
71 --labels $labels
|
|
72 </token>
|
|
73 <xml name="cufflinks_gtf_inputs">
|
|
74 <param format="gtf" name="inputs" type="data" label="GTF file(s) produced by Cufflinks" help="" multiple="true" />
|
|
75 <repeat name="additional_inputs" title="Additional GTF Inputs (Lists)">
|
|
76 <param format="gtf" name="additional_inputs" type="data_collection" label="GTF file(s) produced by Cufflinks" help="" />
|
|
77 </repeat>
|
|
78 </xml>
|
|
79 <token name="@CUFFLINKS_GTF_INPUTS@">
|
|
80 ## Inputs.
|
|
81 #for $input_file in $inputs:
|
|
82 "${input_file}"
|
|
83 #end for
|
|
84 #for $additional_input in $additional_inputs:
|
|
85 #for $input_file in $additional_input.additional_inputs:
|
|
86 "${input_file}"
|
|
87 #end for
|
|
88 #end for
|
|
89 </token>
|
|
90 <token name="@HAS_MULTIPLE_INPUTS@">getattr(inputs, "__len__", [].__len__)() >= 2</token>
|
|
91 </macros> |