diff filter/ob_grep.xml @ 0:527ecd2fc500 draft

Uploaded
author bgruening
date Thu, 15 Aug 2013 03:25:06 -0400
parents
children 125da3a296ca
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/filter/ob_grep.xml	Thu Aug 15 03:25:06 2013 -0400
@@ -0,0 +1,98 @@
+<tool id="ctb_obgrep" name="Compound Search" version="0.1">
+    <description>an advanced molecular grep program using SMARTS</description>
+    <parallelism method="multi" split_inputs="infile" split_mode="to_size" split_size="10000" shared_inputs="" merge_outputs="outfile"></parallelism>
+    <requirements>
+        <requirement type="package" version="2.3.2">openbabel</requirement>
+    </requirements>
+    <command>
+        ## The command is a Cheetah template which allows some Python based syntax.
+        ## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
+        obgrep
+
+        $invert_matches
+        #if $n_times != 0:
+            -t $n_times
+        #end if
+
+        $only_name
+        $full_match
+        $number_of_matches
+        -i ${infile.ext}
+        "${smarts_pattern}"
+        "${infile}"
+        > "${outfile}" 2>&#38;1
+    </command>
+    <inputs>
+        <param name="infile" type="data" format="sdf,mol,mol2,cml,inchi,smi" label="Compound File" help="Specify a compound file in SDF Format."/>
+        <param name="smarts_pattern" type="text" format="text" label="SMARTS Pattern" help="Specify a SMARTS Pattern for your search."/>
+        <param name="invert_matches" type="boolean" label="Invert the matching, print non-matching molecules" truevalue="-v" falsevalue="" checked="false" />
+        <param name="n_times" type="integer" value="0" label="Print a molecule only if the pattern occurs # times inside the molecule" />
+        <param name="only_name" type="boolean" label="Only print the name of the molecules" truevalue="-n" falsevalue="" checked="false" />
+        <param name="full_match" type="boolean" label="Full match, print matching-molecules only when the number of heavy atoms is also equal to the number of atoms in the SMARTS pattern" truevalue="-f" falsevalue="" checked="false" />
+        <param name="number_of_matches" type="boolean" label="Print the number of matches" truevalue="-c" falsevalue="" checked="false" />
+    </inputs>
+    <options sanitize="False"/>
+    <outputs>
+        <data name="outfile" format_source="infile" label="${tool.name} on ${on_string}"/>
+    </outputs>
+    <tests>
+    <test>
+        <param name="infile" ftype="smi" value="8_mol.smi"/>
+        <param name="smarts_pattern" value="CO"/>
+        <param name="invert_matches" value="" />
+        <param name="n_times" value="0"/>
+        <param name="only_name" value="" />
+        <param name="full_match" value="" />
+        <param name="number_of_matches" value="" />
+        <output name="outfile" ftype="smi" file="obgrep_on_8_mol.smi"/>
+    </test>
+    </tests>
+    <help>
+
+.. class:: infomark
+
+**What this tool does**
+
+Uses the Open Babel Obgrep_ to search for molecules inside multi-molecule files (e.g. SMI, SDF, etc.) or across multiple files.
+It is known that not all SMARTS features from the Daylight Toolkit are supported, please have a look here_.
+
+
+.. _Obgrep: http://openbabel.org/wiki/Obgrep
+.. _here: http://openbabel.org/wiki/SMARTS
+
+-----
+
+.. class:: infomark
+
+**Input**
+
+| - `SD-Format`_
+| - `SMILES Format`_
+
+.. _SD-Format: http://en.wikipedia.org/wiki/Chemical_table_file
+.. _SMILES Format: http://en.wikipedia.org/wiki/Simplified_molecular_input_line_entry_specification
+
+-----
+
+.. class:: infomark
+
+**Output**
+
+Same as input format.
+
+-----
+
+.. class:: infomark
+
+**Cite**
+
+N M O'Boyle, M Banck, C A James, C Morley, T Vandermeersch, and G R Hutchison - `Open Babel: An open chemical toolbox.`_
+
+.. _`Open Babel: An open chemical toolbox.`: http://www.jcheminf.com/content/3/1/33
+
+`Open Babel`_
+
+.. _`Open Babel`: http://openbabel.org/wiki/Main_Page
+
+    </help>
+</tool>