changeset 10:135f3bae5c56 draft

Uploaded
author bgruening
date Sat, 14 Dec 2013 03:29:29 -0500
parents c53a73b8eef9
children baf4283e2d7f
files bamCompare.xml bamCorrelate.xml bamCoverage.xml bamFingerprint.xml bigwigCompare.xml computeGCBias.xml computeMatrix.xml correctGCBias.xml deepTools_macros.xml heatmapper.xml profiler.xml tool_dependencies.xml
diffstat 12 files changed, 257 insertions(+), 260 deletions(-) [+]
line wrap: on
line diff
--- a/bamCompare.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/bamCompare.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_bamCompare" name="bamCompare" version="1.0">
+<tool id="deeptools_bamCompare" name="bamCompare" version="1.0.2">
     <description>normalizes and compares two BAM files to obtain the ratio, log2ratio or difference. (bam2bigwig)</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
--- a/bamCorrelate.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/bamCorrelate.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,13 +1,11 @@
-<tool id="deeptools_bamCorrelate" name="bamCorrelate" version="1.0.1">
+<tool id="deeptools_bamCorrelate" name="bamCorrelate" version="1.0.2">
     <description>correlates pairs of BAM files</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
     <command>
-        #import tempfile
-        #set $temp_dir = os.path.abspath(tempfile.mkdtemp())
-
         #set files=[]
         #set labels=[]
 
@@ -21,16 +19,17 @@
 
         --bamfiles #echo " ".join($files)
         --labels #echo " ".join($labels)
-
         --fragmentLength $fragmentLength
         --corMethod $corMethod
 
-        #set newoutFileName=str($outFileName)+".png"
-        --plotFile $newoutFileName
+        --plotFile $outFileName
 
         #if $outputOpt.showOutputOpt == "yes"
             --outRawCounts '$outFileRawCounts' 
             --outFileCorMatrix '$outFileCorMatrix'
+            --plotFileFormat $output.outFileFormat
+        #else:
+            --plotFileFormat 'png'
         #end if
 
         #if $mode.modeOpt == "bins":
@@ -64,9 +63,6 @@
             --colorMap '$mode.advancedOpt.colorMap'
 
         #end if
-
-        ; mv $newoutFileName $outFileName
-        ; rm $temp_dir -rf
     </command>
 
     <inputs>
@@ -111,6 +107,13 @@
             </param>
             <when value="no" />
             <when value="yes">
+                <param name="outFileFormat" type="select" label="Image file format">
+                    <option value="png" selected="true">png</option>
+                    <option value="pdf">pdf</option>
+                    <option value="svg">svg</option>
+                    <option value="eps">eps</option>
+                    <option value="emf">emf</option>
+                </param>
                 <param name="saveRawCounts" type="boolean" label="Save the bin counts"/>
                 <param name="saveCorMatrix" type="boolean" label="Save the correlation matrix"/>
             </when>
@@ -118,7 +121,14 @@
 
     </inputs>
     <outputs>
-        <data format="png" name="outFileName" />
+        <data format="png" name="outFileName">
+            <change_format>
+                <when input="output.outFileFormat" value="pdf" format="pdf" />
+                <when input="output.outFileFormat" value="svg" format="svg" />
+                <when input="output.outFileFormat" value="eps" format="eps" />
+                <when input="output.outFileFormat" value="emf" format="emf" />
+            </change_format>
+        </data>
         <data format="tabular" name="outFileRawCounts" label="${tool.name} on ${on_string}: bin counts">
             <filter>(outputOpt['showOutputOpt'] == 'yes' and outputOpt['saveRawCounts'] == True)</filter>
         </data>
--- a/bamCoverage.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/bamCoverage.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_bamCoverage" name="bamCoverage" version="1.0">
+<tool id="deeptools_bamCoverage" name="bamCoverage" version="1.0.2">
     <description> generates a coverage bigWig file from a given BAM file.  Multiple options are available to count reads and normalize coverage. (bam2bigwig)</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
--- a/bamFingerprint.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/bamFingerprint.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_bamFingerprint" name="bamFingerprint" version="1.0">
+<tool id="deeptools_bamFingerprint" name="bamFingerprint" version="1.0.2">
     <description>plots profiles of BAM files; useful for assesing ChIP signal strength</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
--- a/bigwigCompare.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/bigwigCompare.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_bigwigCompare" name="bigwigCompare" version="1.0">
+<tool id="deeptools_bigwigCompare" name="bigwigCompare" version="1.0.2">
     <description>normalizes and compares two bigWig files to obtain the ratio, log2ratio or difference</description>
     <expand macro="requirements"/>
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
@@ -29,10 +30,6 @@
 
         #end if
     </command>
-    <stdio>
-        <regex match="Error:" />
-        <regex match="EXception:" />
-    </stdio>
     <inputs>
         <param name="bigwigFile1" format="bigwig" type="data" label="Treatment bigwig file" />
         <param name="bigwigFile2" format="bigwig" type="data" label="bigWig file" />
--- a/computeGCBias.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/computeGCBias.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,9 +1,7 @@
-<tool id="deeptools_computeGCBias" name="computeGCBias" version="1.0.1">
+<tool id="deeptools_computeGCBias" name="computeGCBias" version="1.0.2">
     <description>to see whether your samples should be normalized for GC bias</description>
     <expand macro="requirements" />
-    <stdio>
-        <exit_code range="0" level="warning" description="Warning" />
-    </stdio>
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
--- a/computeMatrix.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/computeMatrix.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_computeMatrix" name="computeMatrix" version="1.0">
+<tool id="deeptools_computeMatrix" name="computeMatrix" version="1.0.2">
     <description>summarizes and prepares an intermediary file containing scores associated with genomic regions that can be used afterwards to plot a heatmap or a profile</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
@@ -116,7 +117,7 @@
       <when value="reference-point">
         <param name="referencePoint" type="select" label="The reference point for the plotting">
             <option value="TSS" selected="true">beginning of region (e.g. TSS)</option>
-            <option value="TES">end of region (e.g. TES)</option>
+            <option	 value="TES">end of region (e.g. TES)</option>
             <option value="center">center of region</option>
         </param>
         
@@ -126,19 +127,8 @@
         <param name="afterRegionStartLength" type="integer" value="1000" min="1" label="Distance downstream of the end site of the given regions" help="If the regions are genes, this would be the distance downstream of the transcription end site."/>
       </when>
     </conditional>
-    
-    <conditional name="output" >
-        <param name="showOutputSettings" type="select" label="Show additional output options" >
-            <option value="no" selected="true">no</option>
-            <option value="yes">yes</option>
-        </param>
-          <when value="no" />
-          <when value="yes">
-            <param name="saveData" type="boolean" label="Save the averages per matrix column into a text file" help="This corresponds to the underlying data used to plot a summary profile."/>
-            <param name="saveMatrix" type="boolean" label="Save the matrix of values underlying the heatmap" help="This matrix can easily be loaded into R or other programs."/>
-            <param name="saveSortedRegions" type="boolean" label="Save the regions after skiping zeros or min/max threshold values" help="The order of the regions in the file follows the sorting order selected. This is useful, for example, to generate other heatmaps keeping the sorting of the first heatmap."/>
-        </when>
-    </conditional>
+
+    <expand macro="graphic_output_settings" />
 
     <conditional name="advancedOpt" >
       <param name="showAdvancedOpt" type="select" label="Show advanced options" >
@@ -183,32 +173,8 @@
     
     </inputs>
   <outputs>
-    <data format="bgzip" name="outFileName" label="${tool.name} on ${on_string}: Matrix">
-    </data>
-    <data format="tabular" name="outFileNameData" label="${tool.name} on ${on_string}: averages per matrix column">
-        <filter>
-        ((
-            output['showOutputSettings'] == 'yes' and 
-            output['saveData'] is True
-        ))
-        </filter>
-    </data>
-    <data format="tabular" name="outFileNameMatrix" label="${tool.name} on ${on_string}: Heatmap values">
-        <filter>
-        ((
-            output['showOutputSettings'] == 'yes' and 
-            output['saveMatrix'] is True
-        ))
-        </filter>
-    </data>
-    <data format="bed" name="outFileSortedRegions" label="${tool.name} on ${on_string}: sorted/filtered regions">
-        <filter>
-        ((
-            output['showOutputSettings'] == 'yes' and 
-            output['saveSortedRegions'] is True
-        ))
-        </filter>
-    </data>
+    <data format="bgzip" name="outFileName" label="${tool.name} on ${on_string}: Matrix" />
+    <expand macro="output_graphic_outputs" />
   </outputs>
     <!--
     computeMatrix -S test.bw -R test2.bed -a 100 -b 100 -bs 1 
--- a/correctGCBias.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/correctGCBias.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,6 +1,7 @@
-<tool id="deeptools_correctGCBias" name="correctGCBias" version="1.0.1">
+<tool id="deeptools_correctGCBias" name="correctGCBias" version="1.0.2">
     <description>uses the output from computeGCBias to generate corrected BAM files</description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
--- a/deepTools_macros.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/deepTools_macros.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -43,17 +43,27 @@
             <requirement type="package" >samtools</requirement>
             <requirement type="package" >deepTools</requirement>
             <requirement type="package" >ucsc_tools</requirement>
-            <requirement type="package" version="1.5.4_fada41ab04f78c4c78d10c7a216e5c3160e8c36e">deepTools</requirement>
+            <requirement type="package" version="1.5.4_6765c227d9628f8e6ba690e6fde7f1d86c497b49">deepTools</requirement>
             <requirement type="package" version="0.1">ucsc_tools</requirement>
             <requirement type="package" version="1.7.1">numpy</requirement>
             <requirement type="package" version="0.7.7">pysam</requirement>
+            <requirement type="package" version="0.12.0">scipy</requirement>
             <requirement type="package" version="1.2.1">matplotlib</requirement>
             <requirement type="package" version="0.1.19">samtools</requirement>
             <requirement type="package" version="12-2013">bx-python</requirement>
             <yield />
         </requirements>
-        </macro>
-
+    </macro>
+    <macro name="stdio">
+        <stdio>
+            <exit_code range="1:" />
+            <exit_code range=":-1" />
+            <exit_code range="0" level="warning" description="Warning" />
+            <regex match="Error:" />
+            <regex match="Exception:" />
+            <regex match="EXception:" />
+        </stdio>
+    </macro>
     <token name="@REFERENCES@">
 
 For more informations, please visit our `project site`_.
@@ -144,6 +154,16 @@
         </conditional>
     </macro>
 
+    <macro name="image_file_format">
+        <param name="outFileFormat" type="select" label="Image file format">
+            <option value="png" selected="true">png</option>
+            <option value="pdf">pdf</option>
+            <option value="svg">svg</option>
+            <option value="eps">eps</option>
+            <option value="emf">emf</option>
+        </param>
+    </macro>
+
     <macro name="graphic_output_settings">
         <conditional name="output" >
             <param name="showOutputSettings" type="select" label="Show advanced output settings" >
@@ -166,8 +186,42 @@
         </conditional>
     </macro>
 
+    <macro name="output_graphic_outputs">
+        <data format="png" name="outFileName" label="${tool.name} image">
+            <change_format>
+                <when input="output.outFileFormat" value="pdf" format="pdf" />
+                <when input="output.outFileFormat" value="svg" format="svg" />
+                <when input="output.outFileFormat" value="eps" format="eps" />
+                <when input="output.outFileFormat" value="emf" format="emf" />
+            </change_format>
+        </data>
+        <data format="tabular" name="outFileNameData" label="${tool.name} on ${on_string}: averages per matrix column">
+            <filter>
+            ((
+                output['showOutputSettings'] == 'yes' and 
+                output['saveData'] is True
+            ))
+            </filter>
+        </data>
+        <data format="tabular" name="outFileNameMatrix" label="${tool.name} on ${on_string}: Heatmap values">
+            <filter>
+            ((
+                output['showOutputSettings'] == 'yes' and 
+                output['saveMatrix'] is True
+            ))
+            </filter>
+        </data>
+        <data format="bed" name="outFileSortedRegions" label="${tool.name} on ${on_string}: sorted/filtered regions">
+            <filter>
+            ((
+                output['showOutputSettings'] == 'yes' and 
+                output['saveSortedRegions'] is True
+            ))
+            </filter>
+        </data>
+    </macro>
+
     <macro name="colormap">
-
         <param name="colorMap" type="select" label="Color map to use for the heatmap" help=" Available color map names can be found here: http://www.astro.lsa.umich.edu/~msshin/science/code/matplotlib_cm/">
             <option value="RdYlBu" selected="true">RdYlBu</option>
             <option value="Accent">Accent</option>
--- a/heatmapper.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/heatmapper.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,191 +1,175 @@
-<tool id="deeptools_heatmapper" name="heatmapper" version="1.0">
+<tool id="deeptools_heatmapper" name="heatmapper" version="1.0.2">
     <description>creates a heatmap for a score associated to genomic regions</description>
-    <expand macro="requirements">
-        <requirement type="package" version="1.7.1">numpy</requirement>
-        <requirement type="package" version="1.2.1">matplotlib</requirement>
-        <requirement type="package" version="0.12.0">scipy</requirement>
-    </expand>
+    <expand macro="requirements"/>
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
-  <command>
-  heatmapper
+    <command>
+        heatmapper
+
+        --matrixFile $matrixFile
+        --outFileName $outFileName
 
-  --matrixFile $matrixFile
-  #if $output.showOutputSettings == "yes"
-      #set newoutFileName=str($outFileName)+"."+str($output.outFileFormat)
-      --outFileName $newoutFileName
-      #if $outFileNameData:
-        --outFileNameData '$outFileNameData'
-      #end if
-
-      #if $outFileNameMatrix:
-      --outFileNameMatrix '$outFileNameMatrix'
-      #end if
+        #if $output.showOutputSettings == "yes"
+            --plotFileFormat $output.outFileFormat
+            #if $outFileNameData:
+                --outFileNameData '$outFileNameData'
+            #end if
 
-      #if $outFileSortedRegions:
-        --outFileSortedRegions '$outFileSortedRegions'
-      #end if
-  #else
-    #set newoutFileName=str($outFileName)+".png"
-    --outFileName $newoutFileName
-  #end if
-  
-  #if $advancedOpt.showAdvancedOpt == "yes"
-      #if $advancedOpt.sortRegions:
-        --sortRegions '$advancedOpt.sortRegions'
-      #end if
-      
-      #if $advancedOpt.sortUsing:
-        --sortUsing '$advancedOpt.sortUsing'
-      #end if
-      
-      #if $advancedOpt.averageTypeSummaryPlot:
-        --averageTypeSummaryPlot '$advancedOpt.averageTypeSummaryPlot'
-      #end if
-      
-      #if str($advancedOpt.missingDataColor.value) != "None":
-        --missingDataColor '$advancedOpt.missingDataColor'
-      #end if
+            #if $outFileNameMatrix:
+                --outFileNameMatrix '$outFileNameMatrix'
+            #end if
+
+            #if $outFileSortedRegions:
+                --outFileSortedRegions '$outFileSortedRegions'
+            #end if
+        #else
+            --plotFileFormat 'png'
+        #end if
+
+        #if $advancedOpt.showAdvancedOpt == "yes"
+            #if $advancedOpt.sortRegions:
+                --sortRegions '$advancedOpt.sortRegions'
+            #end if
       
-      --colorMap '$advancedOpt.colorMap'
-      
-      #if $advancedOpt.zMin:
-        --zMin $advancedOpt.zMin
-      #end if
-      #if $advancedOpt.zMax:
-        --zMax $advancedOpt.zMax
-      #end if
-      
-      #if $advancedOpt.yMin:
-        --yMin $advancedOpt.yMin
-      #end if
-      #if $advancedOpt.yMax:
-        --yMax $advancedOpt.yMax
-      #end if
+            #if $advancedOpt.sortUsing:
+                --sortUsing '$advancedOpt.sortUsing'
+            #end if
+
+            #if $advancedOpt.averageTypeSummaryPlot:
+                --averageTypeSummaryPlot '$advancedOpt.averageTypeSummaryPlot'
+            #end if
 
-      --xAxisLabel '$advancedOpt.xAxisLabel'
-      --yAxisLabel '$advancedOpt.yAxisLabel'
+            #if str($advancedOpt.missingDataColor.value) != "None":
+                --missingDataColor '$advancedOpt.missingDataColor'
+            #end if
+
+            --colorMap '$advancedOpt.colorMap'
+
+            #if $advancedOpt.zMin:
+                --zMin $advancedOpt.zMin
+            #end if
+            #if $advancedOpt.zMax:
+                --zMax $advancedOpt.zMax
+            #end if
 
-      --heatmapWidth $advancedOpt.heatmapWidth
-      --heatmapHeight $advancedOpt.heatmapHeight
-
-      --whatToShow '$advancedOpt.whatToShow'
+            #if $advancedOpt.yMin:
+                --yMin $advancedOpt.yMin
+            #end if
+            #if $advancedOpt.yMax:
+                --yMax $advancedOpt.yMax
+            #end if
 
-      --startLabel '$advancedOpt.startLabel' 
-      --endLabel '$advancedOpt.endLabel'
-      --refPointLabel '$advancedOpt.referencePointLabel'
-      --regionsLabel '$advancedOpt.regionsLabel'
+            --xAxisLabel '$advancedOpt.xAxisLabel'
+            --yAxisLabel '$advancedOpt.yAxisLabel'
+
+            --heatmapWidth $advancedOpt.heatmapWidth
+            --heatmapHeight $advancedOpt.heatmapHeight
+
+            --whatToShow '$advancedOpt.whatToShow'
 
-      #if str($advancedOpt.plotTitle.value) != "None":
-      --plotTitle '$advancedOpt.plotTitle'
-      #end if
-
-      $advancedOpt.onePlotPerGroup
-  #end if
+            --startLabel '$advancedOpt.startLabel' 
+            --endLabel '$advancedOpt.endLabel'
+            --refPointLabel '$advancedOpt.referencePointLabel'
+            --regionsLabel '$advancedOpt.regionsLabel'
 
-  ; mv $newoutFileName $outFileName
-  </command>
-  <inputs>
-    <param name="matrixFile" format="bgzip" type="data" label="Matrix file from the computeMatrix tool"/>
+            #if str($advancedOpt.plotTitle.value) != "None":
+                --plotTitle '$advancedOpt.plotTitle'
+            #end if
 
-    <expand macro="graphic_output_settings" />
+            $advancedOpt.onePlotPerGroup
+        #end if
+    </command>
+    <inputs>
+        <param name="matrixFile" format="bgzip" type="data" label="Matrix file from the computeMatrix tool"/>
 
-    <conditional name="advancedOpt" >
-      <param name="showAdvancedOpt" type="select" label="Show advanced options" >
-        <option value="no" selected="true">no</option>
-        <option value="yes">yes</option>
-      </param>
-      <when value="no" />
-      <when value="yes">
-        <param name="sortRegions" type="select" label="Sort regions"
-           help="Whether the heatmap should present the regions sorted. The default is to sort in descending order based on the mean value per region.">
-          <option value="no">no ordering</option>
-          <option value="descend" selected="true">descending order</option>
-          <option value="ascend">ascending order</option>
-        </param>
+        <expand macro="graphic_output_settings" />
+
+        <conditional name="advancedOpt" >
+            <param name="showAdvancedOpt" type="select" label="Show advanced options" >
+                <option value="no" selected="true">no</option>
+                <option value="yes">yes</option>
+            </param>
+            <when value="no" />
+            <when value="yes">
+                <param name="sortRegions" type="select" label="Sort regions"
+                    help="Whether the heatmap should present the regions sorted. The default is to sort in descending order based on the mean value per region.">
+                    <option value="no">no ordering</option>
+                    <option value="descend" selected="true">descending order</option>
+                    <option value="ascend">ascending order</option>
+                </param>
 
-        <param name="sortUsing" type="select" label="Method used for sorting" help="For each row the method is computed." >
-          <option value="mean" selected="true">mean</option>
-          <option value="median">median</option>
-          <option value="min">min</option>
-          <option value="max">max</option>
-          <option value="sum">sum</option>
-          <option value="region_length">region length</option>
-        </param>
+                <param name="sortUsing" type="select" label="Method used for sorting" help="For each row the method is computed." >
+                    <option value="mean" selected="true">mean</option>
+                    <option value="median">median</option>
+                    <option value="min">min</option>
+                    <option value="max">max</option>
+                    <option value="sum">sum</option>
+                    <option value="region_length">region length</option>
+                </param>
 
-        <param name="averageTypeSummaryPlot" type="select" label="Type of statistic that should be plotted in the summary image above the heatmap">
-          <option value="mean" selected="true">mean</option>
-          <option value="median">median</option>
-          <option value="min">min</option>
-          <option value="max">max</option>
-          <option value="sum">sum</option>
-          <option value="std">std</option>
-        </param>
+                <param name="averageTypeSummaryPlot" type="select" label="Type of statistic that should be plotted in the summary image above the heatmap">
+                    <option value="mean" selected="true">mean</option>
+                    <option value="median">median</option>
+                    <option value="min">min</option>
+                    <option value="max">max</option>
+                    <option value="sum">sum</option>
+                    <option value="std">std</option>
+                </param>
 
-        <param name="missingDataColor" type="text" label="Missing data color" value="black" optional="true" help="If 'Represent missing data as zero' is not set, such cases will be colored in black by default. By using this parameter a different color can be set. A value between 0 and 1 will be used for a gray scale (black is 0). Also color names can be used, see a list here: http://packages.python.org/ete2/reference/reference_svgcolors.html. Alternatively colors can be specified using the #rrggbb notation." />
-
-        <expand macro="colormap" />
+                <param name="missingDataColor" type="text" label="Missing data color" value="black" optional="true" help="If 'Represent missing data as zero' is not set, such cases will be colored in black by default. By using this parameter a different color can be set. A value between 0 and 1 will be used for a gray scale (black is 0). Also color names can be used, see a list here: http://packages.python.org/ete2/reference/reference_svgcolors.html. Alternatively colors can be specified using the #rrggbb notation." />
 
-        <param name="zMin" type="float" value="" size="3" label="Minimum value for the heatmap intensities. Leave empty for automatic values" optional="true"/>
-        <param name="zMax" type="float" value="" size="3" label="Maximum value for the heatmap intensities. Leave empty for automatic values" optional="true"/>
-        <param name="yMin" type="float" value="" size="3" label="Minimum value for the Y-axis of the summary plot. Leave empty for automatic values" optional="true"/>
-        <param name="yMax" type="float" value="" size="3" label="Maximum value for Y-axis of the summary plot. Leave empty for automatic values" optional="true"/>
-
-        <param name="xAxisLabel" type="text" value="distance from TSS (bp)" size="200" label="Description for the x-axis label" />
-        <param name="yAxisLabel" type="text" value="genes" size="30" label="Description for the y-axis label for the top panel" />
+                <expand macro="colormap" />
 
-        <param name="heatmapWidth" type="float" value="7.5" min="1" max="100" label="Heatmap width in cm" help="The minimum value is 1 and the maximum is 100."/>
-        <param name="heatmapHeight" type="float" value="25" min="3" max="100" label="Heatmap height in cm" help="The minimum value is 3 and the maximum is 100."/>
+                <param name="zMin" type="float" value="" size="3" label="Minimum value for the heatmap intensities. Leave empty for automatic values" optional="true"/>
+                <param name="zMax" type="float" value="" size="3" label="Maximum value for the heatmap intensities. Leave empty for automatic values" optional="true"/>
+                <param name="yMin" type="float" value="" size="3" label="Minimum value for the Y-axis of the summary plot. Leave empty for automatic values" optional="true"/>
+                <param name="yMax" type="float" value="" size="3" label="Maximum value for Y-axis of the summary plot. Leave empty for automatic values" optional="true"/>
+
+                <param name="xAxisLabel" type="text" value="distance from TSS (bp)" size="200" label="Description for the x-axis label" />
+                <param name="yAxisLabel" type="text" value="genes" size="30" label="Description for the y-axis label for the top panel" />
 
-        <param name="whatToShow" type="select" label="What to show" help ="The default is to include a summary or profile plot on top of the heatmap and a heatmap colorbar.">
-          <option value="plot, heatmap and colorbar" selected="true">summary plot, heatmap and colorbar</option>
-          <option value="plot only">summary plot only</option>
-          <option value="plot and heatmap">summary plot and heatmap (no colorbar)</option>
-          <option value="heatmap only">heatmap only</option>
-          <option value="heatmap and colorbar">heatmap and colorbar</option>
-          <option value="colorbar only">colorbar only</option>
-        </param>
+                <param name="heatmapWidth" type="float" value="7.5" min="1" max="100" label="Heatmap width in cm" help="The minimum value is 1 and the maximum is 100."/>
+                <param name="heatmapHeight" type="float" value="25" min="3" max="100" label="Heatmap height in cm" help="The minimum value is 3 and the maximum is 100."/>
 
-        <param name="startLabel" type="text" value="TSS" size="10" label="Label for the region start" help ="[only for scale-regions mode] Label shown in the plot for the start of the region. Default is TSS (transcription start site), but could be changed to anything, e.g. &quot;peak start&quot;." />
-        <param name="endLabel" type="text" value="TES" size="10" label="Label for the region end" help="[only for scale-regions mode] Label shown in the plot for the region end. Default is TES (transcription end site)."/>
-
-        <param name="referencePointLabel" type="text" value="TSS" size="10" label="Reference point label" help ="[only for scale-regions mode] Label shown in the plot for the reference-point. Default is the same as the reference point selected (e.g. TSS), but could be anything, e.g. &quot;peak start&quot; etc." />
-        <param name="regionsLabel" type="text" value="genes" size="30" label="Labels for the regions plotted in the heatmap" help="If more than one region is being plotted a list of labels separated by comma and limited by quotes, is required. For example, &quot;label1, label2&quot;."/>
-        <param name="plotTitle" type="text" value="" size="30" label="Title of the plot" help="Title of the plot, to be printed on top of the generated image. Leave blank for no title." />
-        <param name="onePlotPerGroup" type="boolean" truevalue="--onePlotPerGroup" falsevalue="" label="Do one plot per group" help="When the region file contains groups separated by &quot;#&quot;, the default is to plot the averages for the distinct plots in one plot. If this option is set, each group will get its own plot, stacked on top of each other."/>
-
+                <param name="whatToShow" type="select" label="What to show" help ="The default is to include a summary or profile plot on top of the heatmap and a heatmap colorbar.">
+                    <option value="plot, heatmap and colorbar" selected="true">summary plot, heatmap and colorbar</option>
+                    <option value="plot only">summary plot only</option>
+                    <option value="plot and heatmap">summary plot and heatmap (no colorbar)</option>
+                    <option value="heatmap only">heatmap only</option>
+                    <option value="heatmap and colorbar">heatmap and colorbar</option>
+                    <option value="colorbar only">colorbar only</option>
+                </param>
 
-      </when>
-    </conditional>
+                <param name="startLabel" type="text" value="TSS" size="10" label="Label for the region start" help ="[only for scale-regions mode] Label shown in the plot for the start of the region. Default is TSS (transcription start site), but could be changed to anything, e.g. &quot;peak start&quot;." />
+                <param name="endLabel" type="text" value="TES" size="10" label="Label for the region end" help="[only for scale-regions mode] Label shown in the plot for the region end. Default is TES (transcription end site)."/>
 
-  </inputs>
-  <outputs>
-    <data format="png" name="outFileName" label="${tool.name} image">
-    <change_format>
-        <when input="output.outFileFormat" value="pdf" format="pdf" />
-        <when input="output.outFileFormat" value="svg" format="svg" />
-        <when input="output.outFileFormat" value="eps" format="eps" />
-        <when input="output.outFileFormat" value="emf" format="emf" />
-    </change_format>
-    </data>
-    <data format="tabular" name="outFileNameData" label="${tool.name} raw plot data">
-      <filter>(output['showOutputSettings'] == 'yes' and output['saveData'] == True)</filter>
-    </data>
-    <data format="tabular" name="outFileNameMatrix" label="${tool.name} matrix of heatmap values">
-      <filter>(output['showOutputSettings'] == 'yes' and output['saveMatrix'] == True)</filter>
-    </data>
-    <data format="bed" name="outFileSortedRegions" label="${tool.name} sorted/filtered regions">
-      <filter>(output['showOutputSettings'] == 'yes' and output['saveSortedRegions'] == True)</filter>
-    </data>  
-  </outputs>
+                <param name="referencePointLabel" type="text" value="TSS" size="10" label="Reference point label" help ="[only for scale-regions mode] Label shown in the plot for the reference-point. Default is the same as the reference point selected (e.g. TSS), but could be anything, e.g. &quot;peak start&quot; etc." />
+                <param name="regionsLabel" type="text" value="genes" size="30" label="Labels for the regions plotted in the heatmap" help="If more than one region is being plotted a list of labels separated by comma and limited by quotes, is required. For example, &quot;label1, label2&quot;."/>
+                <param name="plotTitle" type="text" value="" size="30" label="Title of the plot" help="Title of the plot, to be printed on top of the generated image. Leave blank for no title." />
+                <param name="onePlotPerGroup" type="boolean" truevalue="--onePlotPerGroup" falsevalue="" label="Do one plot per group" help="When the region file contains groups separated by &quot;#&quot;, the default is to plot the averages for the distinct plots in one plot. If this option is set, each group will get its own plot, stacked on top of each other."/>
+            </when>
+        </conditional>
+    </inputs>
+    <outputs>
+        <data format="png" name="outFileName" label="${tool.name} image">
+            <change_format>
+                <when input="output.outFileFormat" value="pdf" format="pdf" />
+                <when input="output.outFileFormat" value="svg" format="svg" />
+                <when input="output.outFileFormat" value="eps" format="eps" />
+                <when input="output.outFileFormat" value="emf" format="emf" />
+            </change_format>
+        </data>
+        <expand macro="output_graphic_outputs" />
+    </outputs>
     <tests>
         <test>
             <param name="matrixFile" value="master.mat.gz" ftype="bgzip" />
             <output name="outFileName" file="master.png" ftype="png" compare="sim_size" delta="100" />
         </test>
     </tests>
-  <help>
+    <help>
 
 **What it does**
 
--- a/profiler.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/profiler.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -1,8 +1,9 @@
-<tool id="deeptools_profiler" name="profiler" version="1.0">
+<tool id="deeptools_profiler" name="profiler" version="1.0.2">
     <description>
         creates a profile plot for a score associated to genomic regions
     </description>
     <expand macro="requirements" />
+    <expand macro="stdio" />
     <macros>
         <import>deepTools_macros.xml</import>
     </macros>
@@ -10,10 +11,10 @@
         profiler
 
         --matrixFile $matrixFile
+        --outFileName $outFileName
 
         #if $output.showOutputSettings == "yes"
-            #set newoutFileName = str($outFileName)+"."+str($output.outFileFormat)
-            --outFileName $newoutFileName
+            --plotFileFormat $output.outFileFormat
 
             #if $output.saveData:
                 --outFileNameData '$outFileNameData' 
@@ -27,8 +28,7 @@
                 --outFileSortedRegions '$outFileSortedRegions'
             #end if
         #else
-            #set newoutFileName = str($outFileName)+".png"
-            --outFileName $newoutFileName
+            --plotFileFormat 'png'
         #end if
 
         #if $scaleRegions.showScaleRegionsOpt == "yes":
@@ -64,7 +64,6 @@
                 --yAxisLabel '$advancedOpt.yAxisLabel'
             #end if
         #end if
-        ; mv $newoutFileName $outFileName
     </command>
     <inputs>
         <param name="matrixFile" format="bgzip" type="data" label="Matrix file from the computeMatrix tool"/>
@@ -80,7 +79,9 @@
             </when>
         </conditional>
 
-        <expand macro="graphic_output_settings" />
+        <expand macro="graphic_output_settings">
+            <expand macro="image_file_format" />
+        <expand>
 
         <conditional name="advancedOpt">
             <param name="showAdvancedOpt" type="select" label="Show advanced options" >
@@ -110,7 +111,6 @@
                     <option value="std">std</option>
                     <option value="overlapped_lines">overlapped lines</option>
                 </param>
-
                 <param name="regionsLabel" type="text" value="genes" size="30" label="Labels for the regions plotted in the heatmap" help="If more than one region is being plotted a list of labels separated by comma and limited by quotes, is required. For example, &quot;label1, label2&quot;."/>
                 <param name="plotTitle" type="text" value="" size="30" label="Title of the plot" help="Title of the plot, to be printed on top of the generated image. Leave blank for no title." />
                 <param name="onePlotPerGroup" type="boolean" truevalue="--onePlotPerGroup" falsevalue="" label="Do one plot per group" help="When the region file contains groups separated by &quot;#&quot;, the default is to plot the averages for the distinct plots in one plot. If this option is set, each group will get its own plot, stacked on top of each other."/>
@@ -122,25 +122,9 @@
         </conditional>
     </inputs>
     <outputs>
-        <data format="png" name="outFileName" label="${tool.name} image">
-            <change_format>
-                <when input="output.outFileFormat" value="pdf" format="pdf" />
-                <when input="output.outFileFormat" value="svg" format="svg" />
-                <when input="output.outFileFormat" value="eps" format="eps" />
-                <when input="output.outFileFormat" value="emf" format="emf" />
-            </change_format>
-        </data>
-        <data format="tabular" name="outFileNameData" label="${tool.name} raw plot data">
-            <filter>(output['showOutputSettings'] == 'yes' and output['saveData'] == True)</filter>
-        </data>
-        <data format="tabular" name="outFileNameMatrix" label="${tool.name} matrix of heatmap values">
-            <filter>(output['showOutputSettings'] == 'yes' and output['saveMatrix'] == True)</filter>
-        </data>
-        <data format="bed" name="outFileSortedRegions" label="${tool.name} sorted/filtered regions">
-            <filter>(output['showOutputSettings'] == 'yes' and output['saveSortedRegions'] == True)</filter>
-        </data>
-  </outputs>
-  <help>
+        <expand macro="output_graphic_outputs" />
+    </outputs>
+    <help>
 
 **What it does**
 
--- a/tool_dependencies.xml	Tue Dec 10 12:13:18 2013 -0500
+++ b/tool_dependencies.xml	Sat Dec 14 03:29:29 2013 -0500
@@ -4,13 +4,13 @@
         <repository changeset_revision="00e17a794a2e" name="package_samtools_0_1_19" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
     </package>
     <package name="numpy" version="1.7.1">
-        <repository changeset_revision="796c0081adad" name="package_numpy_1_7" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
+        <repository changeset_revision="ef12a3a11d5b" name="package_numpy_1_7" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
     </package>
     <package name="matplotlib" version="1.2.1">
-        <repository changeset_revision="9d164359606b" name="package_matplotlib_1_2" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
+        <repository changeset_revision="dceff6072512" name="package_matplotlib_1_2" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
     </package>
     <package name="scipy" version="0.12.0">
-        <repository changeset_revision="d277bf006c3e" name="package_scipy_0_12" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
+        <repository changeset_revision="984d208b0808" name="package_scipy_0_12" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
     </package>
     <package name="pysam" version="0.7.7">
         <repository changeset_revision="b62538c8c664" name="package_pysam_0_7_7" owner="iuc" prior_installation_required="True" toolshed="http://toolshed.g2.bx.psu.edu" />
@@ -57,7 +57,7 @@
          <readme>The tools downloaded by this dependency definition are free for academic use. TODO: UCSC tools are only available with their latest version. That is not good for reproducibility.</readme>
      </package>
 
-    <package name="deepTools" version="1.5.4_fada41ab04f78c4c78d10c7a216e5c3160e8c36e">
+    <package name="deepTools" version="1.5.4_6765c227d9628f8e6ba690e6fde7f1d86c497b49">
         <install version="1.0">
             <actions>
                 <action type="shell_command">git clone --recursive https://github.com/fidelram/deepTools.git</action>
@@ -70,7 +70,7 @@
                         <package name="bx-python" version="12-2013" />
                     </repository>
                 </action>
-                <action type="shell_command">git reset --hard fada41ab04f78c4c78d10c7a216e5c3160e8c36e</action>
+                <action type="shell_command">git reset --hard 6765c227d9628f8e6ba690e6fde7f1d86c497b49</action>
                 <action type="make_directory">$INSTALL_DIR/lib/python</action>
                 <action type="shell_command">
                     export PYTHONPATH=$PYTHONPATH:$INSTALL_DIR/lib/python &amp;&amp;