3.7 years ago by
United States
Let there be a sequence processing tool written by Heng Li that is called seqtk (https://github.com/lh3/seqtk).
Then if we want to use this tool in Galaxy we have to write a wrapper that will wrap the tool and display it in the Galaxy's interface. This wrapper is in the form of an XML file and is commonly referred to as Galaxy Tool, wrapper, and sometimes even toolconf. It describes to Galaxy how to call the underlying tool (the seqtk) and how to connect the inputs/outputs. The underlying tool can be written in any language.
----------------------
Let there be a very complicated tool that is called htseq.
Then if we want to use it in Galaxy we could find that the XML syntax for wrapper is not capable enough to do what we want. We will decide to write a Python wrapper for it as Python can express our needs. This Python wrapper will wrap the htseq tool exposing inputs and outputs. It can be written in any language. Afterwards we still have to create the Galaxy Tool in the form of XML but this time, the Galaxy Tool will call the Python wrapper which in turn calls the underlying htseq.
----------------------
The actual seqtk XML wrappers can be found here: https://github.com/galaxyproject/tools-iuc/tree/master/tools/seqtk
The actual htseq XML wrappers can be found here: https://github.com/galaxyproject/tools-iuc/tree/master/tools/htseq
Thank you for using Galaxy. Let me know if you have any questions
Martin
•
link
modified 3.7 years ago
•
written
3.7 years ago by
Martin Čech ♦♦ 4.9k