diff measure_image_intensity.xml @ 0:e87d1fd2d673 draft

"planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools commit 6d73056a625002d0275b5a9a90a9fae329ce47f1"
author bgruening
date Thu, 26 Mar 2020 17:43:18 -0400
parents
children 20525bc7f6f4
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/measure_image_intensity.xml	Thu Mar 26 17:43:18 2020 -0400
@@ -0,0 +1,104 @@
+<tool id="cp_measure_image_intensity" name="MeasureImageIntensity" version="@CP_VERSION@">
+    <description>measures several intensity features across an entire image (excluding masked pixels)</description>
+  
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+
+    <expand macro="py_requirements"/>
+    <expand macro="cmd_modules" />
+
+    <configfiles>
+        <inputs name="inputs" />
+        <configfile name="script_file">
+import json
+import sys
+import os
+
+FOURSPACES=@SPACES@
+
+input_json_path = sys.argv[1]
+input_pipeline= sys.argv[2]
+
+params = json.load(open(input_json_path, "r"))
+
+def writemii():
+    _str = "\nMeasureImageIntensity:[module_num:%d|svn_version:\\'Unknown\\'|variable_revision_number:2|show_window:False|notes:\\x5B\\x5D|batch_state:array(\\x5B\\x5D, dtype=uint8)|enabled:True|wants_pause:False]\n" % new_count
+
+    for intensity in params['rpt_intensity']:
+        obj_flag = intensity['con_intensity']['only_from_objects']
+
+        _str += FOURSPACES + "Select the image to measure:%s\n" % intensity['image_to_measure']
+        _str += FOURSPACES + "Measure the intensity only from areas enclosed by objects?:%s\n" % obj_flag
+
+        if obj_flag == "No":
+            _str += FOURSPACES + "Select the input objects:None\n"
+        else:
+            _str += FOURSPACES + "Select the input objects:%s\n" % intensity['con_intensity']['input_objects']
+
+    return _str
+
+with open(input_pipeline) as fin:
+    lines = fin.readlines()
+
+    k, v = lines[4].strip().split(':')
+
+    module_count = int(v)
+    new_count = module_count + 1
+    lines[4] = k + ":%d\n" % new_count
+    with open("output", "w") as f:
+        f.writelines(lines)
+        f.write(writemii())
+
+f.close()
+        </configfile>    
+    </configfiles>
+
+    <inputs>
+
+        <expand macro="input_pipeline_macro" />
+        <repeat name="rpt_intensity" title="Add another image">
+            <param name="image_to_measure" label="Select image to measure" type="text" >
+                <expand macro="text_validator" />
+            </param>
+            <conditional name="con_intensity">
+                <param name="only_from_objects" label="Measure the intensity only from areas enclosed by objects?" display="radio" type="select">
+                    <option value="Yes">Yes</option>
+                    <option value="No">No</option>
+                </param>
+                <when value="Yes">
+                    <param name="input_objects" label="Select the input objects" type="text">
+                        <expand macro="text_validator" />
+                    </param>
+                </when>
+                <when value="No" />
+            </conditional>
+        </repeat>
+    </inputs>
+
+    <outputs>
+        <expand macro="output_pipeline_macro" />
+    </outputs>
+
+    <tests>
+        <test>
+            <expand macro="test_input_pipeline_param" />
+            <repeat name="rpt_intensity">
+                <param name="image_to_measure" value="DNA" />
+                <conditional name="con_intensity">
+                    <param name="only_from_objects" value="No" />
+                </conditional>
+            </repeat>
+            <repeat name="rpt_intensity">
+                <param name="image_to_measure" value="DNA" />
+                <conditional name="con_intensity">
+                    <param name="only_from_objects" value="Yes" />
+                    <param name="input_objects" value="Nuclei" />
+                </conditional>
+            </repeat>
+            <expand macro="test_out_file" file="measure_image_intensity.txt" />
+        </test>
+    </tests>
+    <expand macro="help" module="MeasureImageIntensity" />
+    <expand macro="citations" />
+</tool>