pwtools.visualize.ViewFactory¶
- class pwtools.visualize.ViewFactory(cmd=None, assert_cmd=None, suffix='.axsf', writer=<function write_axsf>)[source]¶
Bases:
object
Factory for creating interface functions to external molecular viewers.
- __init__(cmd=None, assert_cmd=None, suffix='.axsf', writer=<function write_axsf>)[source]¶
- Parameters:
cmd (str) – Shell command to call the viewer. Used as
<cmd> <structfile>
. Example: ‘jmol’, ‘xcrysden –axsf’.assert_cmd (callable) – Function which accepts a single arg. Called as
assert_cmd(obj)
where obj = Structure or Trajectory instance usually). Will be called early. Use to make additional tests on obj.suffix (str) – File end for written structure file.
writer (callable) – Called as
writer(obj, structfile)
. Write struct file to read by viewer.
Examples
>>> viewer = ViewFactory(...) >>> viewer(struct) >>> # To start more than one viewer, use bg=True to send the spawned >>> # process to the background. Will leave temp files on disk. >>> viewer(struct1, bg=True) >>> viewer(struct2, bg=True)
- __call__(obj, logfile=None, structfile=None, disp=False, keepfiles=False, tmpdir='/tmp', wait=True, bg=False, options='')[source]¶
Call viewer.
The executed shell command is:
<cmd> <options> <structfile> > <logfile>
- Parameters:
obj (Structure or Trajectory)
logfile (str, optional) – Filename of a logfile for the viewer’s text output.
structfile (str, optional) – Filename of a file to write the structure to.
disp (bool) – Display text output (i.e. logfile’s content).
keepfiles (bool) – Keep structfile and logfile on disk.
tmpdir (str, optional) – Directory where temp files are written to.
wait (bool, optional) – wait passed to common.system(), wait (or not) for command to exit
bg (bool) – Background mode. If True then this is an alias for wait=False + keepfiles=True. The latter is needed b/c with just wait=False, temp files will be deleted right after the shell call and the viewer program may complain.
Methods