[chimera-dev] Send PDB and CCP4 selected to an external program

Pablo Solar Rodríguez pablo.solar at delogica.com
Fri Feb 24 00:12:51 PST 2017


 

Hello again dear mates!

I've been working those days in my extension and the GUI es almost
finished. Now I want to fill this skeleton with the process logic. To
understand between us, I have an external compiled program that is
executed in shell this way:

./bin/myProgram ./dir1/pdbselected.pdb ./dir/mapselected.ccp4 arg3 arg3
arg4

And for sure, in my .py test, it has to be executed as:

import subprocess
subprocess.call(["./Users/Solar/Desktop/parent/child1/child2/bin/myProgram",
"/Users/Solar/Desktop/parent/child1/child2/dir1/pdbselected.pdb",
"/Users/Solar/Desktop/parent/child1/child2/dir1/mapselected.ccp4",
"arg3", "arg4", "arg5"])

The problem is to execute this in Chimera as an extension. The coding I
made for the PDB and the Map it's similar to the FitMap tool (in Volume
Data), where I use:

...
# PDB
from chimera import Molecule
mlist = [m for m in fit_object_models() if isinstance(m, Molecule)]
fstart = mlist[0] if mlist else None
from chimera.widgets import ModelOptionMenu
om = ModelOptionMenu(ff, labelpos = 'w', label_text = 'Fit ',
initialitem = fstart,
listFunc = fit_object_models,
sortFunc = compare_fit_objects,
command = self.object_chosen_cb)
om.grid(row = 0, column = 0, sticky = 'w')
self.object_menu = om

# Map
fm = Volume_Menu(ff, ' in map ')
fm.frame.grid(row = 0, column = 1, sticky = 'w')
self.map_menu = fm
--

The question is, how can I pass the PDB to the compiled program as it is
expected? Or, another possible solution, the paths of the PDB and the
Map loaded in Chimera? I didn't found any friendly doc (methods, info
and so on) about this and and I'm a mess :/

Thank you in advance dear coworkers!

Pablo

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://plato.cgl.ucsf.edu/pipermail/chimera-dev/attachments/20170224/471b597d/attachment.html>


More information about the Chimera-dev mailing list