Feature #2634
closednew base form for appionloop web GUI forms
0%
Description
I've written a new abstraction for the appion loop web forms. Everything is backward compatible, so no rush to convert forms.
Now, all appion loop forms can be written with a single .inc file placed in processing/inc/forms.
The page is displayed in the browser by going to runAppionLoop.php and providing the name of the form class.
For example,
betamyamiweb/processing/runAppionLoop.php?expId=8556&form=MakeDDStackFormwill display the makeDDStackForm by looking in processing/inc/forms for the makeddStackForm.inc file. The file is then loaded and the form class is instantiated in the runAppionLoop.php file.
New appionloop forms will be based on the new BasicLoopForm class. New forms will simply set the parameters for the base class like this:
// Set the publications to be references on the web pages $pubList = array('appion'); $this->setPublications( $pubList ); $this->setJobType( 'makeddrawframestack' ); $this->setOutputDirectory( 'ddstack' ); $this->setBaseRunName( 'ddstack' ); $this->setTitle( 'makeDDRawFrameStack.py Launcher' ); $this->setHeading( 'Create a Direct Detector Frame Stack' ); $this->setExeFile( 'makeDDRawFrameStack.py' ); $this->setGuideURL( "http://emg.nysbc.org/projects/appion/wiki/Appion_Processing" ); $this->setTestable( True ); // True to activate "test single image". $this->setUseLegOutDir( False ); // The output directory will be created in the Appion run directory rather than Leginon. $this->setShowDesc( True ); // Flag to hide the description field of the run parameters.
This takes care of all the gui stuff that is common to most Appion Loop interfaces.
Then you just need to write a function to display parameters specific to the method that the interface is for, and also a function that handles displaying any "test single image" results, since that changes depending on what is being tested.
The createAppionLoopTable() function has been rewritten to use the BasicForm class in appionLoopTable.inc.
Will check this in asap, hopefully after an in person code review with Anchi, since the changes are pretty far reaching.
Updated by Amber Herold almost 11 years ago
- Status changed from Assigned to In Test
The parameters involved include:
- run name
- output directory
- preset
- wait for more images
- only process x imagaes
- images to process
- image order
- continuation
- commit results
- test on single image
Please double check the values of these parameters when you are running commands and let me know right away if you see anything wrong.
Anchi did an in-person code review, so I am putting this issue directly into test.
Updated by Amber Herold almost 11 years ago
For step-by-step directions on how to add a new Appion Loop GUI form, see How to add an AppionLoop GUI page.