Differences between revisions 3 and 4
Revision 3 as of 2012-04-17 21:34:01
Size: 1484
Editor: JohnFlanagan
Comment:
Revision 4 as of 2012-04-17 21:34:23
Size: 1485
Editor: JohnFlanagan
Comment:
Deletions are marked like this. Additions are marked like this.
Line 9: Line 9:
 1. method: ''makeStackedWidget()'', this adds to the workflow widget stack(the SPR and tomo workflow trees are inserted into a QWidgetStack). If you want to add a new mode to the projectmanager, add to this method the line: {{{#!highlight python''self.tree_stacked_widget.addWidget(self.makeTreeWidget(os.getenv("EMAN2DIR")+'/lib/pmconfig/myjsonfile.json', 'name'))''}}} where ''myjsonfile.json'' is the JSON file for this mode and ''name'' is the name of this mode(will be displayed in the mode combobox).  1. method: ''makeStackedWidget()'', this adds to the workflow widget stack(the SPR and tomo workflow trees are inserted into a QWidgetStack). If you want to add a new mode to the projectmanager, add to this method the line: {{{#!highlight python ''self.tree_stacked_widget.addWidget(self.makeTreeWidget(os.getenv("EMAN2DIR")+'/lib/pmconfig/myjsonfile.json', 'name'))''}}} where ''myjsonfile.json'' is the JSON file for this mode and ''name'' is the name of this mode(will be displayed in the mode combobox).

This page illustrates the working of e2projectmanager.py

The new GUI for EMAN2 is known as e2projectmanager.py and is mainly used to organize electron microscopy projects, and execute e2programs. The projectmanager can be run in two modes, SPR(single particle reconstruction) and tomo (tomogramphic). Other modes can be added and this page describes how to do that. Each mode has a JSON file describing the workflow of a mode. The workflow is a tree that describes a flow of data from raw to final form, and traversing this tree describes the data flow(approximately, as some deviations are allowed). These JSON files can be easily modified to allow workflow modification without needing to touch the source code(a vast improvement over e2workflow.py).

Design of e2projectmanager.py

The projectmanager itself is implemented as a class named: EMProjectManager that inherits from QtGui.QMainWindow This class is quite large and has many methods.

  1. method: makeStackedWidget(), this adds to the workflow widget stack(the SPR and tomo workflow trees are inserted into a QWidgetStack). If you want to add a new mode to the projectmanager, add to this method the line: #!highlight python ''self.tree_stacked_widget.addWidget(self.makeTreeWidget(os.getenv("EMAN2DIR")+'/lib/pmconfig/myjsonfile.json', 'name'))'' where myjsonfile.json is the JSON file for this mode and name is the name of this mode(will be displayed in the mode combobox).

Eman2ProgramingPM (last edited 2012-04-17 22:47:15 by JohnFlanagan)