diff hal_halExtract.xml @ 0:ea84fd77a2d2 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/haltools commit 6244b9d15a5ad97ae20191e2f8fbafe2050c3cac
author iuc
date Fri, 06 Feb 2026 10:34:37 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/hal_halExtract.xml	Fri Feb 06 10:34:37 2026 +0000
@@ -0,0 +1,98 @@
+<tool id="hal_halextract" name="halExtract" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
+    <description>can be used to copy between formats</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"/> 
+    <expand macro="stdio"/>
+    <command detect_errors="aggressive"><![CDATA[
+        halExtract
+            #if $root:
+                --root '$root'
+            #end if
+            #if $outputFormat.type == 'mmap':
+                --outputFormat 'mmap'
+                --mmapFileSize $outputFormat.mmapFileSize
+            #else if $outputFormat.type == 'hdf5':
+                --outputFormat 'hdf5'
+            #end if
+            '$input_hal' '$output_file'
+    ]]></command>
+    <inputs>
+        <expand macro="input_hal"/>
+        <expand macro="params_root_optional"/>
+        <conditional name="outputFormat">
+            <param name="type" type="select" label="Output storage format">
+                <!-- 
+                At the moment, creating a HAL file in mmap format is disabled. The creation in HDF5 format is enforced.
+                <option value="Same as input" selected="true">Same as input file</option> 
+                <option value="mmap">mmap</option> 
+                -->
+                <option value="hdf5" selected="true">HDF5</option>
+            </param>
+            <when value="hdf5"/>
+            <!-- 
+            <when value="Same as input"/>
+            <when value="mmap">
+                <expand macro="params_mmap_size"/>
+            </when> 
+            -->
+        </conditional>
+    </inputs>
+    <outputs>
+        <data name="output_file" format="hal" label="${tool.name} on ${on_string}: ${outputFormat.type}"/>
+    </outputs>
+    <tests>
+        <test expect_num_outputs="1">
+            <param name="input_hal" value="halTest.hal"/>
+            <output name="output_file" ftype="hal">
+                <assert_contents>
+                    <has_size min="50000"/>
+                </assert_contents>
+            </output>
+            <assert_stdout>
+                <has_text text="Extracting Genome_0"/>
+            </assert_stdout>
+        </test>
+        <!-- 
+        Disabled until mmap HAL format is allowed
+        <test expect_num_outputs="1">
+            <param name="input_hal" value="halTest.hal"/>
+            <conditional name="outputFormat">
+                <param name="type" value="mmap"/>
+                <param name="mmapFileSize" value="1"/>
+            </conditional>
+            <assert_stdout>
+                <has_text text="Extracting Genome_0"/>
+            </assert_stdout>
+        </test>
+        -->
+        <test expect_num_outputs="1">
+            <param name="input_hal" value="halTest.hal"/>
+            <param name="root" value="Genome_1"/>
+            <output name="output_file" ftype="hal">
+                <assert_contents>
+                    <has_size min="20000"/>
+                </assert_contents>
+            </output>
+            <assert_stdout>
+                <has_text text="Extracting Genome_1"/>
+            </assert_stdout>
+        </test>
+    </tests>
+    <help><![CDATA[
+halExtract copies HAL files between different storage formats, such as HDF5 and mmap. 
+It reads an input HAL file and writes an output HAL file in the desired format, optionally extracting a subtree rooted at a specified genome. 
+
+- **HDF5** is standard container format for larger data sets with good compression characteristics.  
+- The **mmap** format stores the raw data structures in a file, which is accessed by mapping it in memory using the mmap system call. HAL files in the mmap format are considerably bigger but often much faster to access. 
+    
+-----
+
+.. class:: warningmark
+
+At the moment, extraction to mmap format is disabled. The extraction to HDF5 format is enforced.    
+    ]]></help>
+    <expand macro="citation"/>
+    <expand macro="creator"/>
+</tool>
\ No newline at end of file