Welcome, Guest. Please Login or Register
UGENE Bulletin Board
  Welcome to our forum.
  HomeHelpSearchLoginRegister  
 
 
Page Index Toggle Pages: 1
introducting perl script into ugene as element in workflow (Read 10316 times)
Apr 25th, 2011 at 4:24pm

Poh   Offline
YaBB Newbies

Posts: 46
*
 
Hi!

I have a bunch of script formation a file format to the other in perl.

I am interested to know how can I introduce the script into ugene as a ugene element in the workflow designer?

Is there a way to put in plugins in ugene?

Thanks.
 
IP Logged
 
Reply #1 - Apr 25th, 2011 at 6:04pm

Mikhail Fursov   Offline
YaBB Administrator

Gender: male
Posts: 162
*****
 
Hi!
To add scripting support for your favorite language in UGENE's Workflow Designer you need the following

1) Think about data model mapping: all algorithms in UGENE use common data model. So your script must output in some form (either file or stdout) data that your adapter in UGENE will be able to parse and create UGENE data models

2) Check "Create Script Object" toolbar action. It allows you creating custom script objects using QtScript (JavaScript).
Clone it to serve your needs.

Hope it helps.



 

---
UGENE team
IP Logged
 
Reply #2 - Apr 27th, 2011 at 3:40pm

Poh   Offline
YaBB Newbies

Posts: 46
*
 
Is there a simple hello world example on it?

I am looking at just try out a few script with a define input file and run it, output text file and that's it.

I am not sure of the common data model. Still looking.

Thanks.

 
IP Logged
 
Reply #3 - Apr 28th, 2011 at 4:25pm

Poh   Offline
YaBB Newbies

Posts: 46
*
 
I manage to do a read and write file. It looks working, but not yet with scripting....

Any pointers if I am to add a component in between read write to convert character from xxx to yyy or something like that?

Thanks.
 

IP Logged
 
Reply #4 - Apr 28th, 2011 at 5:26pm

Poh   Offline
YaBB Newbies

Posts: 46
*
 
ok I tried. but cannot find where can I put in the code in parameter to call the perl scripts..

Any pointers?
 

IP Logged
 
Reply #5 - Apr 28th, 2011 at 6:20pm

Mikhail Fursov   Offline
YaBB Administrator

Gender: male
Posts: 162
*****
 
Poh wrote on Apr 27th, 2011 at 3:40pm:
Is there a simple hello world example on it?

I am looking at just try out a few script with a define input file and run it, output text file and that's it.

I am not sure of the common data model. Still looking.

Thanks.



There is no simple or standard way to integrate script engine into the application. The example with QT script actually uses QScriptEngine  from QT that is different from running an independent standalone app.
May be we should think and introduce a framework here to simplify use other languages with UGENE: https://ugene.unipro.ru/tracker/browse/UGENE-253

Common data model is very simple. Start with DNASequence. To use it in the simplest way the only you need is a) name b) sequence c) alphabet
You need to create a wrapper for your script to parse it results and create DNASequence object.
 

---
UGENE team
IP Logged
 
Reply #6 - Apr 29th, 2011 at 8:59am

Poh   Offline
YaBB Newbies

Posts: 46
*
 
ok.

Sequencing files are one of the common start point for sequence analysis.

However, many highthroughput data are not sequence based. For example, genotyping data from microarray.

It exist in the form like this.
organism genotype1 genotype2 genotype3
ABC        11             00            10
BCA        10             11            10

Then the data are needed to be converted to (usually done with the script)

INPUT   ABC  BCA
G1        AA    AB
G2        BB    AA
G3        AB    AB

Enabling a much more generic interface to enable end users to create element to process data, empowering end user to wrap in scripts they found/write and put it as element into ugene would be a very powerful feature. Plus the ability to run it local and grid would be well leveraged.

Besides that helps makes ugene a much more flexible tool if users started to share their pipeline via uwl. That can help alot in the prototyping effort before a much more polished pipeline integrated to the mainstream of ugene capabilities. Enabling that too will lighten the load of ugene developers as users around the world shares.
 
IP Logged
 
Page Index Toggle Pages: 1