changeset 0:d7006c780d35 draft

Uploaded
author rlegendre
date Tue, 29 Jul 2014 03:14:17 -0400
parents
children 5feff08a06ea
files ving_wrapper.xml
diffstat 1 files changed, 152 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ving_wrapper.xml	Tue Jul 29 03:14:17 2014 -0400
@@ -0,0 +1,152 @@
+<tool id="ving" name="Ving" version="1.1.0">
+	<requirements>
+		<requirement type='binary' version="3.0.2">R</requirement>
+		<requirement type="package" version="2.14">Bioconductor</requirement>
+		<requirement type="package" version="1.15.41">GenomicRanges</requirement>
+		<requirement type="package" version="1.14.3">Rsamtools</requirement>
+	</requirements>
+	<description>Visualization of NGS data</description>
+	<parallelism method="basic"></parallelism>
+	<command interpreter="Rscript">
+		./ving.R
+		#for $i in $series	
+			#set $index = os.popen("samtools index " + str($i.bamfile) + " " + str($i.bamfile) + ".bai")
+			${i.bamfile} --description-data=${i.description}
+		#end for
+		--output=$output
+		#if $normalizationCoefficient 
+			--normalization-coefficient=$normalizationCoefficient
+		#end if
+		#if str($strand) == 'yes':
+			--inverseStrand
+		#end if
+		--chromosome-name=$chrom
+		--start=$start
+		--end=$end
+	    #if $annotation.gff == 'yes':
+	      	#for $f in $annotation.serie
+			--annotation=${f.ownFile}
+			#end for
+		    --typeTranscript=${annotation.typeTranscript}
+		    --annotation-colors=${annotation.annotColor}
+		    --annotation-shapes=${annotation.shapes}
+		    ${annotation.annotationColorByStrand}
+		#end if
+		#if $visuType.visu == 'classic':
+			--typeVisu=classic
+			--classic-plus-color=${visuType.plusColor}
+	    	--classic-minus-color=${visuType.minusColor}
+	    #elif $visuType.visu == 'heatmap':
+			--typeVisu=heatmap
+			--heatmap-max-color=${visuType.heatmapMax}
+	    	--heatmap-min-color=${visuType.heatmapMin}
+	    	--heatmap-palette-method=${visuType.method}
+		#else:
+			--typeVisu=lines
+	    	--lines-samples-colors=${visuType.linesColors}
+	    	--lines-samples-type-line=${visuType.linesType}
+		#end if
+	    $scaleLog
+	    $symetricScale
+		$unstrand
+    	$annotationPlacedByStrand
+		#if $smoothLength
+			--smoothLength=$smoothLength
+		#end if
+		
+	</command>
+	<inputs>
+		<repeat name="series" title="Bam file">
+			<param name="bamfile" format="bam" type="data" label="Bam file"/>
+			<param name="description" format="txt" type="text" label="Name for your data" help="Describes each data with a name. The default is the filename."/>
+	    </repeat>
+	  	<param name="strand" type="select" label="Inversed strand" help="Use this if the library type is fr-first-strand. All your bam files will treated the same way.">
+		    <option value="yes" >yes</option>
+		    <option value="no" selected="True">no</option>
+		</param>
+		<param name="normalizationCoefficient" format="txt" type="text" value="" label="Normalization coefficient" help="If it is not precised no normalization will be done. Each bam file will be multiplied by a coefficient."/>
+		<param name="chrom" format="txt" type="text" value="chr01" label="Chromosome name" />
+		<param name="start" format="txt" type="text" value="100" label="Begin of the region" />
+		<param name="end" format="txt" type="text" value="10000" label="End of the region" />
+	  	<conditional name="annotation">
+	    	<param name="gff" type="select" label="Will you select a reference annotation file from your history?" help="">
+	      		<option value="no">No</option>
+	      		<option value="yes">Yes</option>
+	    	</param>
+	    	<when value="no">
+	    	</when>
+	    	<when value="yes">
+	      		<repeat name="serie" title="GFF file">
+					<param name="ownFile" type="data" format="gff" metadata_name="dbkey" label="Select the annotation file (gff)" />
+	      		</repeat>
+	      		<param name="typeTranscript" format="txt" type="text" value="all" label="Type of transcripts to visualize" help="Use this option if you want to choose the transcripts to visualize. Many transcripts are seperated by a comma-separated list." />
+	      		<param name="annotColor" format="txt" type="text" value="red" label="Different colors for the transcripts" help="Any color name accepted by R. Hexadecimal color code is possible, but without the #. You have to set the same number of colors and transcripts. Comma-separated list."/>
+	      		<param name="shapes" format="txt" type="text" value="box" label="Shape used for the annotation" help="You have four choices: box, rectangle, arrow, line. The default is box. You have to set the same number of shapes and transcripts. For yeast data, we use 'box' for every type of transcripts. For human data, we use 'rectangle' for exons and 'arrow' for introns. Comma-separated list."/>
+	      		<param name="annotationColorByStrand" type="boolean" truevalue="--annotation-color-by-strand" falsevalue="" checked="True" label="Annotation color by strand" help="Use this if you want the transcripts are colored by the strand." />
+	    	</when>  
+	  	</conditional>  
+	  	<param name="scaleLog" type="boolean" truevalue="--scale-log" falsevalue="" checked="True" label="Scale log" help="Use this if you want a logarithmic scale." />
+	  	<param name="symetricScale" type="boolean" truevalue="--symetric-scale" falsevalue="" checked="True" label="Symetric scale" help="This option is for a symetric scale with the same maximum and minimum for both strand in the 'classic' and 'lines' visualization." />
+	  	<param name="annotationPlacedByStrand" type="boolean" truevalue="--annotation-placed-by-strand" falsevalue="" checked="True" label="Annotation placed by strand" help="Use this if you want the transcripts placed according to their strand. It takes more place, but it can be more clear." />
+	  	<param name="unstrand" type="boolean" truevalue="--unstranded" falsevalue="" checked="True" label="Unstranded" help="Use this for an non-strand-specific visualization." />
+	  	<param name="smoothLength" format="txt" type="text" value="" label="Integer value for smoothing" />
+	 	<conditional name="visuType">
+	  		<param name="visu" type="select" label="Type of visualization" >
+		    	<option value="classic" selected="True">classic</option>
+		    	<option value="lines" >lines</option>
+		    	<option value="heatmap">heatmap</option>
+	 		</param>
+	 		<when value="classic">
+	 			<param name="plusColor" format="txt" type="text" value="purple" label="Classic plus strand color" help="Sets the color of plus strand for the classic visualization." />
+	  			<param name="minusColor" format="txt" type="text" value="pink" label="Classic minus strand color" help="Sets the color of minus strand for the classic visualization." />
+	 		</when>
+
+	 		<when value="heatmap">
+	 			<param name="heatmapMax" format="txt" type="text" value="yellow" label="Heatmap maximum color" help="Sets the maximum color of the palette for the heatmap visualization." />
+			  	<param name="heatmapMin" format="txt" type="text" value="green" label="Heatmap minimum color" help="Sets the minimum color of the palette for the heatmap visualization." />
+			  	<param name="method" type="select" label="Method of the palette for the heatmap visualization" help="Two settings : - hsv : varies the hues - rgb : varies the shades">
+			    	<option value="hsv" selected="True">hsv</option>
+			    	<option value="rgb" >rgb</option>
+			  	</param> 
+	  		</when>	
+	  		
+	 		<when value="lines">
+	 			<param name="linesColors" format="txt" type="text" value="black" label="Sample colors" help="Sets the colors for the lines visualization. Comma-separated list. You must specify as many colors as bam files." />
+	  			<param name="linesType" format="txt" type="text" value="1" label="Sample type lines" help="Sets the kind of lines for the lines visualization. Comma-separated list. You must specify as many line types as bam files."/> 
+	  		</when>
+
+	  	</conditional> 		
+  	
+	</inputs>
+	  
+	<outputs>
+		<data name="output" format="png" label="ving result on ${on_string}" />
+	</outputs>
+	  
+	<tests> 
+  		<!-- 
+                    NOTE: tests cannot be run because multiple inputs to a repeat element are not supported.
+  		-->
+	</tests>   
+	  
+	<help>
+Summary
+-------  
+
+This program uses the `Ving`_ R library.
+
+.. _Ving: http://vm-gb.curie.fr/ving/
+
+
+
+Dependances
+------------
+
+.. class:: warningmark
+
+This tool depends on R (>=3.0.2) and samtools. 
+
+
+
+	</help>
+</tool>