diff vcfvcfintersect.xml @ 0:17216b2fae6e

Imported from capsule None
author anton
date Wed, 11 Jun 2014 17:11:12 -0400
parents
children 3a799597bc67
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/vcfvcfintersect.xml	Wed Jun 11 17:11:12 2014 -0400
@@ -0,0 +1,127 @@
+<tool id="vcfvcfintersect" name="VCF-VCFintersect:" version="0.0.1">
+<requirements>
+    <requirement type="package" version="586c5ae5d57a38dae6b32ea831fb1f7cfa14c9bd">vcflib</requirement>
+    <!-- <requirement type="package" version="0.1.18">samtools</requirement> -->
+</requirements>
+  <description>Intersect two VCF datasets</description>
+  <command>
+
+    #set $reference_fasta_filename = "localref.fa"
+    #if str( $reference_source.reference_source_selector ) == "history":
+       ln -s "${reference_source.ref_file}" "${reference_fasta_filename}" &amp;&amp;
+    #else:
+       #set $reference_fasta_filename = str( $reference_source.ref_file.fields.path )
+    #end if
+    
+    #if $adv_options.adv_options_selector == True:
+    
+    vcfintersect "${adv_options.adv_options_input}" ${loci} ${invert} -r "${reference_fasta_filename}" -w "${window_size}" ${isect_union} "${vcf_input1}" "${vcf_input2}" > "${out_file1}"
+
+    #else:
+
+    vcfintersect ${loci} ${invert} -r "${reference_fasta_filename}" -w "${window_size}" ${isect_union} "${vcf_input1}" "${vcf_input2}" > "${out_file1}"   
+
+    #end if
+
+  </command>
+  <inputs>
+    <!-- selecting refernce source -->
+    <param name="vcf_input1" type="data" format="vcf" label="The first VCF dataset" />
+    <param name="vcf_input2" type="data" format="vcf" label="The second VCF dataset" help="The second dataset will be instersected with the first"/>
+    <conditional name="reference_source">
+      <param name="reference_source_selector" type="select" label="Choose the source for the reference genome" help="This tools needs to access reference genomes sequence specified by this option.">
+	<option value="cached">Locally cached</option>
+	<option value="history">History</option>
+      </param>
+      <when value="cached">
+	<param name="ref_file" type="select" label="Select reference genome">
+	  <options from_data_table="fasta_indexes">
+	    <!--<filter type="data_meta" key="dbkey" ref="input_bam" column="value"/>-->
+	  </options>
+	  <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
+	</param>
+      </when>
+      <when value="history"> <!-- FIX ME!!!! -->
+	<param name="ref_file" type="data" format="fasta" label="Using reference file" />
+      </when>
+    </conditional>
+    <param name="isect_union" type="select" label="Union or intersection" help="-i or -u">
+      <option value="-i">Intersect</option>
+      <option value="-u">Union</option>
+    </param>
+    <param name="invert" type="boolean" truevalue="-v" falsevalue="" label="Invert selection?" help="-v, --invert" />
+    <param name="window_size" type="integer" value="30" label="compare records up to this many bp away (window size)" help="-w, --window-size" />
+    <param name="loci" type="boolean" truevalue="-l" falsevalue="" label="output whole loci when one alternate allele matches" help="-l, --loci" />
+    <conditional name="adv_options">
+      <param name="adv_options_selector" type="boolean" truevalue="use_adv_controls" label="Advanced controls" help="Allows you to specify options that are not listed above"/> 
+      <when value="use_adv_controls">
+	<param name="adv_options_input" type="text" value="-t &quot;vcfvcf-intersect-result&quot;" label="Enter additional command line options described in the help section below" help="such as -m, -t, -V, -M, and -T" />
+	<sanitizer>
+	  <valid initial="string.printable">
+	    <remove value="&apos;"/>
+	  </valid>
+	  <mapping initial="none">
+	    <add source="&apos;" target="__sq__"/>
+	  </mapping>
+	</sanitizer>
+      </when>
+    </conditional>
+  </inputs>
+  <outputs>
+    <data format="vcf" name="out_file1" />
+  </outputs>
+  <stdio>
+    <exit_code range="1:" level="fatal" />
+  </stdio>
+  <tests>
+    <test>
+      <param name="reference_source_selector" value="history" />
+      <param name="vcf_input1" value="vcfvcfintersect-input1.vcf" />
+      <param name="vcf_input2" value="vcfvcfintersect-input2.vcf" />
+      <param name="isect_union" value="Intersect" />
+      <param name="invert" value="False" />
+      <param name="loci" value="False" />
+      <patam name="adv_options" value="False" />
+      <param name="window_size" value="30" />
+      <param name="ref_file" value="vcflib-test-genome-phix.fa" />
+      <output name="out_file1" file="vcfvcfintersect-test1.vcf"/>
+    </test>
+    <test>
+      <param name="reference_source_selector" value="history" />
+      <param name="vcf_input1" value="vcfvcfintersect-input1.vcf" />
+      <param name="vcf_input2" value="vcfvcfintersect-input2.vcf" />
+      <param name="isect_union" value="Union" />
+      <param name="invert" value="False" />
+      <param name="loci" value="False" />
+      <patam name="adv_options" value="False" />
+      <param name="window_size" value="30" />
+      <param name="ref_file" value="vcflib-test-genome-phix.fa" />
+      <output name="out_file1" file="vcfvcfintersect-test2.vcf"/>
+    </test>
+    </tests>
+  <help>
+
+Computes intersections and unions for two VCF datasets. Unifies equivalent alleles within window-size bp. 
+
+The options are::
+
+    -v, --invert              invert the selection, printing only records which would
+    -i, --intersect-vcf FILE  use this VCF for set intersection generation
+    -u, --union-vcf FILE      use this VCF for set union generation
+    -w, --window-size N       compare records up to this many bp away (default 30)
+    -r, --reference FILE      FASTA reference file, required with -i and -u
+    -l, --loci                output whole loci when one alternate allele matches
+    -m, --ref-match           intersect on the basis of record REF string
+    -t, --tag TAG             attach TAG to each record's info field if it would intersect
+    -V, --tag-value VAL       use this value to indicate that the allele is passing
+                              '.' will be used otherwise.  default: 'PASS'
+    -M, --merge-from FROM-TAG
+    -T, --merge-to   TO-TAG   merge from FROM-TAG used in the -i file, setting TO-TAG
+                              in the current file.
+
+----
+
+VCFVCFintersect is based on vcfintersect utility of VCFlib toolkit developed by Erik Garrison (https://github.com/ekg/vcflib).                                                                                                                                 
+
+</help>
+</tool>