Mercurial > repos > iuc > multigps
diff multigps.xml @ 7:6d6ceda98d94 draft
Uploaded
| author | iuc |
|---|---|
| date | Tue, 04 Apr 2017 14:40:36 -0400 |
| parents | 7dc47046b54c |
| children | 2e5d3c304171 |
line wrap: on
line diff
--- a/multigps.xml Tue Apr 04 10:29:15 2017 -0400 +++ b/multigps.xml Tue Apr 04 14:40:36 2017 -0400 @@ -10,40 +10,9 @@ <![CDATA[ #set output_dir = $output_html.files_path mkdir -p $output_dir && - python '$design_file_script' '$inputs' && + '$design_file' && multigps ## General options - #set single_or_multi_expt = $single_or_multi_expt_cond.single_or_multi_expt - #if str($single_or_multi_expt) == 'multi': - #for $i in $single_or_multi_expt_cond['input_items']: - #set label_cond = $i['label_cond'] - #set experiment_file_name = $label_cond.input - #set label = $label_cond.label - #set file_format = $label_cond.input.ext - #set control_file_name = $label_cond.control - #set condition_name = $label_cond.condition_name - #set replicate_name = 'None' - #set experiment_type = $label_cond.experiment_type - #set fixed_read_count = $label_cond.fixedreadcount - #if str($label) == 'Signal': - #set replicate_name = $label_cond.replicate_name - #else if str($label) == 'Control': - #set rncond = $label_cond.replicate_name_cond - #if str($rncond.specify_replicate_name) == 'yes': - #set replicate_name = $rncond.replicate_name - #end if - #end if - --input_item '$experiment_file_name' '$control_file_name' '$label' '$file_format' '$condition_name' '$replicate_name' '$experiment_type' '$fixed_read_count' - #end for - #else: - #set expt = $single_or_multi_expt_cond.expt - #set control = $single_or_multi_expt_cond.control - --expt '$expt' - --format $expt.ext - #if str($control) != 'None': - --control '$control' - #end if - #end if ## Append .txt extensions to events hrefs ## in output dataset so files will render ## in the browser. @@ -185,76 +154,70 @@ </command> <configfiles> <inputs name="inputs"/> - <configfile name="design_file_script"> + <configfile name="design_file"> <![CDATA[ -import sys -import json - -input_json_path = sys.argv[1] -params = json.load(open(input_json_path, "r")) - -if params['single_or_multi_expt_cond']['single_or_multi_expt'] == 'multi': - input_items = params['single_or_multi_expt_cond']['input_items'] - design_file = open('design.tabular', 'w') - for item in input_items: - experiment_file_name, control_file_name, label, file_format, condition_name, replicate_name, experiment_type, fixed_read_count = item - if control_file_name not in ['None', None, '']: - control_file_names.append(control_file_name) - file_format = file_format.upper() - items = [experiment_file_name, label, file_format, condition_name] - if replicate_name not in ['None', None, '']: - items.append(replicate_name) - if experiment_type not in ['None', None, '']: - items.append(experiment_type) - if fixed_read_count not in ['None', None, '']: - items.append(fixed_read_count) - design_file.write('%s\n' % '\t'.join(items)) - design_file.close() +#for cond_i, condition_items in enumerate($condition_repeat): + #for experiment_items in condition_items['experiment_repeat']: + #set experiment = $experiment_items['experiment'] + #set replicate_name = $experiment_items['replicate_name'] + #set experiment_type = $experiment_items['experiment_type'] + #set line = str($experiment) + 'Signal' + str($experiment.ext.upper()) + str($cond_i) + str($replicate_name) + str($experiment_type) + #set fixedreadcount_cond = $experiment_items['fixedreadcount_cond'] + #set fixedreadcount_select = $fixedreadcount_cond['fixedreadcount_select'] + #if str($fixedreadcount_select) == 'yes': + #set $line += str($fixedreadcount_cond['fixedreadcount']) + #end if + '%s\n' % $line + #end for + #for control_items in condition_items['control_repeat']: + #set control = $control_items['control'] + #set experiment_type = $control_items['experiment_type'] + #set line = str($control_items) + 'Control' + str($control.ext.upper()) + str($cond_i) + #set specify_replicate_name_cond = $control_items['specify_replicate_name_cond'] + #set specify_replicate_name = $specify_replicate_name_cond.specify_replicate_name + #if str($specify_replicate_name) == 'yes': + #set $line += str($specify_replicate_name_cond['replicate_name']) + #end if + #set $line += str($experiment_type) + #set fixedreadcount_cond = $experiment_items['fixedreadcount_cond'] + #set fixedreadcount_select = $fixedreadcount_cond['fixedreadcount_select'] + #if str($fixedreadcount_select) == 'yes': + #set $line += str($fixedreadcount_cond['fixedreadcount']) + #end if + '%s\n' % $line + #end for +#end for ]]> </configfile> </configfiles> <inputs> - <conditional name="single_or_multi_expt_cond"> - <param name="single_or_multi_expt" type="select" label="Run MultiGPS on single or multiple inputs?"> - <option value="multi" selected="True">Multiple inputs</option> - <option value="single">Single input</option> - </param> - <when value="multi"> - <repeat name="input_items" title="Input files, attributes and options" min="2"> - <conditional name="label_cond"> - <param name="label" type="select" label="This experiment is"> - <option value="Signal" selected="True">Signal</option> - <option value="Control">Control</option> - </param> - <when value="Signal"> - <expand macro="label_cond_params_start" /> - <param name="replicate_name" type="text" label="Replicate name" /> - <expand macro="label_cond_params_end" /> - </when> - <when value="Control"> - <expand macro="label_cond_params_start" /> - <conditional name="replicate_name_cond"> - <param name="specify_replicate_name" type="select" label="Specify replicate name?" help="Optional for control experiments. If used, the control will only be used for the corresponding named signal replicate"> - <option value="no" selected="True">No</option> - <option value="yes">Yes</option> - </param> - <when value="yes"> - <param name="replicate_name" type="text" optional="True" label="Replicate name"/> - </when> - <when value="no" /> - </conditional> - <expand macro="label_cond_params_end" /> - </when> - </conditional> - </repeat> - </when> - <when value="single"> - <param name="expt" type="data" format="bam,bed,scidx" label="Run MultiGPS on"> + <repeat name="condition_repeat" title="Condition" min="1"> + <repeat name="experiment_repeat" title="Experiment" min="1"> + <param name="experiment" type="data" format="bam,bed,scidx" label="Select experiment" help="Supported formats are bam, bed and scidx"> + <validator type="unspecified_build" /> + </param> + <expand macro="param_experiment_type" /> + <param name="replicate_name" type="text" label="Replicate name" /> + <expand macro="cond_fixedreadcount" /> + </repeat> + <repeat name="control_repeat" title="Control" min="0"> + <param name="control" type="data" format="bam,bed,scidx" label="Select control" help="Optional, supported formats are bam, bed and scidx"> <validator type="unspecified_build" /> </param> - <param name="control" type="data" format="bam,bed,scidx" optional="True" label="Optional file containing reads from a control experiment" help="Must be same forat as the input above" /> - </when> - </conditional> + <expand macro="param_experiment_type" /> + <conditional name="specify_replicate_name_cond"> + <param name="specify_replicate_name" type="select" label="Specify replicate name?" help="Optional for control experiments. If used, the control will only be used for the corresponding named signal replicate"> + <option value="no" selected="True">No</option> + <option value="yes">Yes</option> + </param> + <when value="yes"> + <param name="replicate_name" type="text" optional="True" label="Replicate name"/> + </when> + <when value="no" /> + </conditional> + <expand macro="cond_fixedreadcount" /> + </repeat> + </repeat> <!-- Advanced options --> <conditional name="advanced_options_cond"> <param name="advanced_options" type="select" label="Advanced options">
